やること Edit

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

これから考えること Edit

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

MVC Edit

ユースケースクラス Edit

ユースケーススコープ Edit

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

ビュー Edit

選べるビュー Edit

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

変形MVC Edit

MVC.svg

docs.google.com

設定方法を用意 Edit

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

エラー対処 Edit

フレームワーク/エラーメッセージにクラス名 Edit

フレームワーク/エラーページにクエリーを Edit

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

セッションの用意 Edit

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

最適化 Edit

フレームワーク/メモ化 Edit

多段メモ化

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

全てURIで Edit

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

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

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

それをクライアントへ。
レスポンスにはクライアントアプリのコードも含む。データ付きのクライアントアプリを送信。
数種類の出力バッファーを用意。グローバル変数に追加していく。HTMLヘッダー・bodyの冒頭・bodyの末尾・ページ内の記述された箇所(これが基本)など。ページ/要素でも(どこに書かれていても)HTMLヘッダー出力などができる。

認証 Edit

ログインログアウト Edit

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

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

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

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

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

永続化 Edit

ロックシステム Edit

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

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

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

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

WikiEngineではなくこちらで。

疑似言語とPerlでフレームワーク Edit

フレームワーク/出力の統合はどうやるか? Edit