- バックアップ一覧
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- :i/プロトタイピング へ行く。
- 1 (2010-11-21 (日) 14:30:48)
- 2 (2010-12-27 (月) 20:10:43)
- 3 (2011-03-24 (木) 18:31:00)
- 4 (2011-04-07 (木) 08:04:26)
- 5 (2011-04-07 (木) 08:10:05)
- 6 (2011-04-07 (木) 08:11:11)
- 7 (2011-04-07 (木) 19:59:56)
- 8 (2011-04-07 (木) 20:15:22)
- 9 (2011-04-07 (木) 20:32:47)
- 10 (2011-04-07 (木) 20:49:58)
- 11 (2011-04-08 (金) 05:31:08)
- 12 (2011-04-08 (金) 13:47:44)
- 13 (2011-04-13 (水) 05:21:22)
- 14 (2011-04-13 (水) 07:40:12)
- 15 (2011-04-16 (土) 07:22:53)
- 16 (2011-04-20 (水) 06:07:18)
- 17 (2011-04-27 (水) 10:07:28)
- 18 (2011-04-27 (水) 19:35:55)
- 19 (2011-04-29 (金) 13:13:08)
- 20 (2011-07-14 (木) 14:43:57)
- 21 (2011-07-14 (木) 15:36:08)
- 22 (2011-07-16 (土) 21:17:15)
- 23 (2011-07-16 (土) 21:30:05)
- 24 (2011-07-19 (火) 19:35:35)
- 25 (2011-07-19 (火) 19:45:44)
- 26 (2011-07-20 (水) 17:20:14)
- 27 (2011-07-21 (木) 10:19:36)
- 28 (2011-07-21 (木) 14:04:31)
- 29 (2011-07-21 (木) 22:33:49)
- 30 (2011-07-21 (木) 22:42:13)
- 31 (2011-07-23 (土) 02:15:52)
- 32 (2011-07-26 (火) 00:00:26)
- 33 (2011-07-27 (水) 21:05:52)
- 34 (2011-07-27 (水) 21:07:17)
- 35 (2011-08-24 (水) 23:43:52)
- 36 (2011-08-25 (木) 02:54:58)
- 37 (2011-09-08 (木) 04:50:45)
- 38 (2011-09-08 (木) 15:09:27)
- 39 (2011-10-02 (日) 15:27:42)
- 40 (2011-10-24 (月) 17:40:57)
- 41 (2011-10-25 (火) 01:43:19)
- 42 (2011-10-25 (火) 01:50:01)
- 43 (2011-10-28 (金) 09:06:36)
- 44 (2011-11-02 (水) 23:45:34)
- 45 (2011-11-06 (日) 00:43:36)
- 46 (2011-12-09 (金) 11:29:42)
- 47 (2011-12-09 (金) 11:52:47)
- 48 (2011-12-09 (金) 11:59:14)
- 49 (2011-12-14 (水) 01:29:17)
- 50 (2011-12-14 (水) 20:16:57)
- 51 (2011-12-18 (日) 03:42:28)
- 52 (2011-12-27 (火) 18:17:13)
- 53 (2011-12-28 (水) 03:29:53)
- 54 (2012-01-08 (日) 03:46:50)
- 55 (2012-02-12 (日) 17:43:20)
- 56 (2012-03-23 (金) 03:07:15)
- 57 (2012-03-24 (土) 02:33:38)
- 58 (2012-05-31 (木) 20:30:06)
- 59 (2012-06-01 (金) 06:16:49)
- 60 (2012-06-14 (木) 09:16:44)
- 61 (2012-06-25 (月) 23:48:04)
- 62 (2012-07-29 (日) 20:27:52)
- 63 (2012-07-30 (月) 01:22:26)
- 64 (2012-07-30 (月) 17:42:39)
- 65 (2012-07-31 (火) 00:55:39)
- 66 (2012-08-03 (金) 13:58:41)
- 67 (2012-08-03 (金) 14:09:06)
- 68 (2012-08-03 (金) 14:22:56)
- 69 (2012-08-04 (土) 06:01:00)
- 70 (2012-08-04 (土) 06:28:33)
- 71 (2012-08-04 (土) 06:30:10)
- 72 (2012-08-08 (水) 15:26:38)
- 73 (2012-08-08 (水) 16:35:41)
- 74 (2012-08-19 (日) 02:13:39)
- 75 (2012-08-19 (日) 02:41:24)
- 76 (2012-08-25 (土) 01:19:54)
- 77 (2012-08-27 (月) 20:01:17)
- 78 (2012-09-09 (日) 06:51:00)
- 79 (2012-09-09 (日) 06:56:35)
- 80 (2012-09-09 (日) 07:25:59)
- 81 (2012-09-09 (日) 08:05:56)
- 82 (2012-09-10 (月) 01:46:29)
- 83 (2012-09-10 (月) 04:04:11)
- 84 (2012-09-20 (木) 06:49:03)
- 85 (2012-10-30 (火) 03:38:50)
- 86 (2012-11-04 (日) 23:31:07)
- 87 (2012-11-07 (水) 06:35:35)
- 88 (2012-11-07 (水) 06:38:36)
- 89 (2012-12-09 (日) 07:43:33)
- 90 (2012-12-09 (日) 07:53:31)
- 91 (2012-12-09 (日) 08:26:55)
- 92 (2012-12-09 (日) 08:46:09)
- 93 (2012-12-09 (日) 09:07:46)
- 94 (2013-02-07 (木) 13:06:39)
- 95 (2013-02-07 (木) 14:13:45)
- 96 (2013-02-07 (木) 17:48:41)
- 97 (2013-02-07 (木) 18:53:49)
- 98 (2013-02-07 (木) 20:39:28)
- 99 (2013-02-07 (木) 22:44:58)
- 100 (2013-02-08 (金) 06:23:20)
- 101 (2013-02-08 (金) 21:18:14)
- 102 (2013-02-10 (日) 01:44:32)
- 103 (2013-02-21 (木) 02:47:56)
- 104 (2013-03-03 (日) 03:36:07)
- 105 (2013-03-03 (日) 03:57:29)
- 106 (2013-03-03 (日) 04:14:22)
- 107 (2013-03-03 (日) 04:17:56)
- 108 (2013-03-03 (日) 05:29:19)
- 109 (2013-03-03 (日) 05:45:56)
- 110 (2013-03-03 (日) 05:52:32)
- 111 (2013-03-05 (火) 04:03:15)
- 112 (2013-03-06 (水) 03:27:09)
- 113 (2013-03-06 (水) 12:38:20)
- 114 (2013-03-08 (金) 08:49:33)
- 115 (2013-03-13 (水) 18:00:21)
- 116 (2013-03-14 (木) 04:45:36)
- 117 (2013-03-15 (金) 11:43:18)
- 118 (2013-03-20 (水) 22:35:51)
- 119 (2013-03-25 (月) 00:48:55)
- 120 (2013-04-04 (木) 23:03:15)
- 121 (2013-04-09 (火) 16:12:25)
- 122 (2013-04-16 (火) 18:16:52)
- 123 (2013-04-16 (火) 18:27:27)
- 124 (2013-04-16 (火) 18:30:07)
- 125 (2013-04-16 (火) 21:34:33)
- 126 (2013-04-17 (水) 00:36:20)
- 127 (2013-04-17 (水) 02:33:47)
- 128 (2013-04-17 (水) 03:14:32)
- 129 (2013-04-18 (木) 20:20:20)
- 130 (2013-04-18 (木) 21:06:03)
- 131 (2013-04-18 (木) 21:15:41)
- 132 (2013-04-18 (木) 21:20:28)
- 133 (2013-04-19 (金) 11:05:00)
- 134 (2013-07-08 (月) 03:56:37)
- 135 (2014-02-20 (木) 05:45:20)
- 136 (2014-02-20 (木) 09:10:13)
- 137 (2014-02-25 (火) 05:50:34)
- 138 (2014-11-03 (月) 03:02:22)
- 139 (2016-02-27 (土) 03:26:25)
- 140 (2016-02-27 (土) 06:31:21)
- 141 (2016-07-02 (土) 15:38:51)
- 142 (2021-01-01 (金) 18:41:02)
- 143 (2021-03-15 (月) 22:34:06)
- 144 (2021-03-17 (水) 08:05:19)
- 145 (2021-03-17 (水) 11:43:20)
- 追加された行はこの色です。
- 削除された行はこの色です。
RIGHT:[[:t/プロトタイピング]] [[:t/実装]] [[:t/目次]] 実装したものと実装のための情報。 このWikiを洗練させるための試作。 [[http://x.pmint.name/>http://x.pmint.name/]] #ls ---------- #contents **プロトタイピング05 [#k2612436] ***概要図 [#g4797979] #ref(:Image/abstract.svg,100%) [[docs.google.com>https://docs.google.com/file/d/0B9sAsjPbXxUHY2ZoejRIS3lkSWs/edit?usp=sharing]] RIGHT:[[:t/コンセプト]] ***fw/Web [#c7404306] #ref(:Image/MVC.svg,100%) [[docs.google.com>https://docs.google.com/file/d/0B9sAsjPbXxUHdmJPc3hTR05SM0E/edit?usp=sharing]] RIGHT:[[:t/Web]] [[:t/実装]] **資料 [#r6f203fe] ***フレームワーク [#hbeb9ad8] [[:t/Web]]フレームワーク部分と、その上の[[:t/Wiki]]フレームワーク部分。 ページ/[[:t/要素]]が動く環境を作る。 ユーザーからのリクエストを対応する要素に伝えて、その結果をレスポンスに変える。 ***権限 [#i5755127] 権限設定と表示。 [[:t/権限]]は「錠」と「鍵」の2種類。 [[:t/属性]]に書く。 [[:t/汎用記法]]で[[:t/埋め込み]]機能を呼び出して権限情報を表示。 ページとその属性名を全て[[:t/URI]]で指定・参照・ページ上にレンダリング。 ***下位展開 [#l0f753b1] [[:t/下位展開]]は複数のページをまとめて見せる機能。 対象になるページは[[:t/順不同]]な[[:t/名前]]([[:t/ページ/名前]])での下位に位置するページ。 ページ間の[[:t/リンク]]も下位展開に対応する必要がある。 まとめられたページは[[:t/見出し]]として表示されるので、リンク先もそこへつなげなければならない。 ページごとに[[:t/権限]]判定と[[:t/代表]]の適用が必要。 ***プレビューモード [#vf775f50] [[:t/プレビュー]]モードは[[:t/名前]]([[:t/ページ/名前]])の補完ルールに細工をすることで実現。 タイムマシンモードも同じ発想。 まだ投稿していないページは[[:t/セッション]]に一時保存。 セッションの実体は特殊な[[:t/ページ]]。一時的ではあるが[[:t/永続化]]することになる。 プレビュー中も[[:t/下位展開]]はある。 **そのうちやること [#fcfe5f45] ***自動リンク [#n5ac218c] -自動リンクルール 相対パス→絶対パス変換に一手間加えたもの。 -メタページ生成ルール ***アカウント [#s0de27cc] -利用者のログイン/ログアウト -アカウント管理 **クラス [#g839899e] →[[クラス]] →[[X]] -X(Wiki) フレームワーク/WebアプリケーションのComponentにあたる。 クラス名は… View::ユースケース名::リクエスト名、Control::ユースケース名 -PageElements 記法別クラスの上位クラス。 記法別クラス(Notations)はWikiTextを読んで''自身が理解できる記法だけ''オブジェクト化する。 WikiTextの先頭からではなく、記法別にオブジェクト化。 ***図 [#a068f061] [[クラス図>http://dl.dropbox.com/u/62172621/wiki/wiki/%E3%82%AF%E3%83%A9%E3%82%B9%E5%9B%B3%20%E3%83%97%E3%83%AD%E3%83%88%E3%82%BF%E3%82%A4%E3%83%94%E3%83%B3%E3%82%B003%20Web%E3%82%A2%E3%83%97%E3%83%AA%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF%E9%83%A8%E5%88%86.png]] [[クラス図>http://dl.dropbox.com/u/62172621/wiki/wiki/%E3%82%AF%E3%83%A9%E3%82%B9%E5%9B%B3%20%E3%83%97%E3%83%AD%E3%83%88%E3%82%BF%E3%82%A4%E3%83%94%E3%83%B3%E3%82%B003%20X.png]] **フレームワーク間の関係 [#d19defef] HTMLを要求するのはフレームワーク/Webアプリケーションのほう。 WebアプリケーションはWikiEngineを3回呼ぶ。 +エントリーポイント +フレームワーク/Webアプリケーション Xオブジェクトを生成。 +フレームワーク/WikiEngine Xオブジェクトを作る(だけ)。 +フレームワーク/Webアプリケーション Xオブジェクトにリクエストを伝える(そのまま渡すのではなく、変数の形で) +フレームワーク/WikiEngine 自身の状態を変化させる。状態は永続化する。 +フレームワーク/Webアプリケーション XにHTMLを要求。 +フレームワーク/WikiEngine HTMLを生成。 +フレームワーク/Webアプリケーション HTMLにヘッダーを付けてWebページ化。 **Wiki、Entry、Side、Revision [#u7d37135] -Entry(項目) -Side(見解) -Revision(版) ''いずれもPageクラスのインスタンス名。'' ただし、実体があるのはRevisionだけ。その名を変えたのがEntry、Side。 ---------- WikiはEntryの構造体。 ルートページから始まるツリー構造。 各Entryもそれぞれツリー構造。 つまりツリーの要素からまたツリーが始まる2段ツリー構造。 **エラーレベル [#t6bc1961] -利用者向け情報 Info 不正なリクエストなど。ページのメッセージ欄に出力。 [[X/Error/Info]] -警告 Warning デバッグ用ログ出力と管理者グループ宛メールに出力。 処理続行。 [[X/Error/Warning]] -致命的エラー Fatal 処理中断。 開発時のアサーション違反はエラー、運用中は警告だけ。 [[X/Error/Fatal]] **排他制御 [#q6171bfe] 更新コマンドのキューイング。 キューと要素の関係。 キュー→ファイル(名前順) 要素→永続化されたCommandオブジェクト。 ファイルロックは…PageFactoryが永続化されたオブジェクトを復帰/保存するときと、オブジェクトが自身の関連ファイル(他のオブジェクトの所有物でないファイル)を操作するときくらい。 モデル系クラスでは自分で自身を書き換える。他のクラスを扱うのはPageFactoryくらい。 [[フレームワーク/Webアプリケーション]] **Componentの使い方 [#n24f2fd9] -WikiEngine(の代表的なクラス)を1つのComponent(MVCセット)にする WikiEngine内部ではクラス間は記法で関連するので。似ているけど別の仕組み。 UsecaseやRequest、Query(検索/クエリーではない)もWikiEngineの一部。Componentの<<control>>や<<model>>部分になる。 WikiEngineの全クラスをComponentにしなくていい。フレームワーク/Webアプリケーションと関わりのあるクラスだけComponentを継承。 -サイトのグローバルナビを1つのComponentにする **ASP.NETを使うなら [#h197c0d4] %%ViewとControllerはASP.NET MVCのもの。%% 非ASP.NET MVC。Wiki - View(.aspx) - Controller。Viewはマスターページのようなものを1つだけ。 プラグイン無し。ControllerでReadなどを実装。というかControllerがプラグインのようなもの。 フレームワーク/WebアプリケーションはASP.NETと競合するので後回し。 フレームワーク/WikiEngine以上を作る。 **実装からTips作成 [#h19c72ba] 実装からTips作成、よりよいコードのヒント集め。 実装以外にも、アイデア、方式、UIなどでも。