やること Edit

フレームワーク/Webアプリケーション Edit

これから考えること Edit

フレームワークの役割をフレームワーク/Webアプリケーションフレームワーク/WikiEngineで分担。

MVC Edit

ユースケース Edit

:i/ユースケーススコープ Edit

Controller = Usecase
その中だけで有効なデータ。

:i/クラス別のセッションデータ

:i/選べるビュー[?] Edit

リクエストとレスポンスの分離。

変形MVC Edit

MVC.svg

docs.google.com

設定方法を用意 Edit

:i/Webアプリの設定はWikiページに書けない Edit

エラー対処 Edit

:i/リクエスト再送はフレームワークで Edit

利用者の情報損失を防ぐ。リトライ可能に。使いにくくなるのを防ぐ。

:i/エラーメッセージにクラス名 Edit

:i/エラーページにクエリーを Edit

HTTPのGETメソッドのときは…URLをデコードして表示するなら意味がある。

セッションの用意 Edit

ページ/セッション[?]の基礎。ページ/要素が扱うのはページでできたセッション領域のほう。

ページ/要素その他が扱うセッションを用意。

最適化 Edit

メモ化 Edit

多段メモ化

リクエストとレスポンス Edit

全てURIで Edit

ページ名と要素部分はフレームワーク/WikiEngineでやること
それ以前のドメインとWikiの指定までを受け持つ。

リクエストをフレームワーク/WikiEngineに渡す Edit

:i/フレームワーク/WikiEngineからの出力をレスポンスにする Edit

認証 Edit

ログインログアウト Edit

オープン認証なんかはWikiEngineよりもこちらで。→WikiEngineは外からユーザーオブジェクトを受け入れることになる。
ログアウトも?

ユーザーオブジェクトの用意 Edit

認証済みユーザーオブジェクトを作る。作るのと破棄だけ。
内容はフレームワーク/WikiEngineが与える。内容がページになっているので。

:i/アカウントの有効期限 Edit

永続化とロックシステム[?] Edit

Webアプリとは別だけど。
なにかのフレームワークでやることではある。

永続化 Edit

ロックシステム[?] Edit

†ロックフェイズ[?]
決まった順序ロック。予約制なので必要なロックを事前に決めなければならない。
永続化クラスもこのルールを守らなければならない。ロック対象と永続化クラスで扱うファイルは区別する。例えばディレクトリを分けて。同じファイルを両者で使うことはしない。

→全て永続化クラスで。ロックシステムは必要ない。

その他、実装上の細かいこと Edit

フレームワーク/WikiEngineの実装案より Edit

WikiEngineではなくこちらで。

:i/疑似言語とPerlでフレームワーク[?] Edit

:i/出力の統合はどうやるか?[?] Edit