Zend FrameworkでClick風コンポーネント志向?
Click Frameworkの「コンポーネント、ページ指向」から、気に入ったエッセンスを頂戴することにする。
http://amateras.sourceforge.jp/cgi-bin/fswiki/wiki.cgi/click?page=WhyClick
下記の解説もわかりやすい
http://www.ogis-ri.co.jp/otc/hiroba/technical/ClickFramework/clickfw01.html
コンポーネント、ページ指向を参考にしてみる
想定する表示フローの基本
- フロントコントローラー(ルーティング)
- ルーティング->ページクラスへの対応付け
- ページクラスの記述を元に必要なコンポーネントの初期化と準備、必要なアクションの実行
- ページクラスにビューを指示
Zend Frameworkで実装するなら・・・
- 可能性1)プラグインでページクラスを制御する
- アクションコントローラーをコンポーネントと見立てる
- ページクラスについては、新規作成
- ページクラスをフロントコントローラーのpreDispatchで処理するプラグインで制御。(個人的には、ルーティングに対応するスキームだと思っているので、オレオレの中ではページスキームとでもいうかもしれない。)
- ページクラスは下記のいずれかまたは複数を合わせて構成
- メインになるクラスとビュースクリプト
- テンプレートエンジンで解釈できるものを利用し、ビューと設計を含んだもの
- 設定ファイル
- アクションコントローラーをコンポーネントとして使うのは一つの手だが、コンポーネントとして独立して設計すべきかもしれない。そこは、しばし考える。
- 可能性2)アクションコントローラーをページクラスとして利用する
- 可能性3)1と2のハイブリッド
※要するにここで想定しているコンポーネントとはMVCコンテナーってこと。Zend_Formは既にMVCコンテナーではある。