イベント駆動型PHPフレームワークを作る その4

Frameworkが提供する道しるべとは何か。
「ActionはEventを受け取り、DBとParameterに対して何らかの処理を行う」
…。
何か足りない。
………。
アウトプットが無いじゃないか!

この辺りを詰める必要がありそうだ。
「何らかの処理」はFrameworkの醍醐味、コールバックが行う訳だから、「何らか」という抽象表現で十分だ。
それでは「何らかの処理」を行った結果はどうなるのだろう。
というか、Frameworkなんだから「どうさせたいか」だろう。
これは設計判断のようだ。
所謂「決め事」だ。
決めてしまおう。
「状態」をどうにかする、で良いんじゃないか。
チラ見したPRADOでもPersistent State、View State、Control State、Application State…と状態が盛りだくさんだ。
これはいける。
「ActionはEventを受け、DBとParameterに対し何らかの処理を行い、状態を変化させる」
一本筋が通った。
状態が道しるべになりそうである。

も少しこの辺りを詰めてみよう。
Webシステムなのだから、outputはHTML、XML、JSONとなるのだろう。
Simgは状態に対応するoutputを返す訳だ。
ここまで来ると、どうやらViewの領域に踏み込んできたようである。
それではViewを少し考えてみよう。

Viewは厄介そうである。
「Simple is great」としては、あんまり大量のコーディングをしたくない。
(単に面倒くさいだけなんじゃないですか…。)
ここは先人の知恵を使わしてもらおう。
PHPとくれば、やはりSmartyである。
ViewにはSmartyの協力を要請します。
Version3が良いですね。
この版にはextendsがあるんですよ。
これは「Simple is great」には欠かせない機能です。
このあたりは追々説明するとして、outputはSmartyのテンプレートを使うことにします。

ゆえにSimgは「状態に対応するテンプレートを決定し、Actionで解決した変数でこれをコンパイルし、レスポンスとする」という機能を持つ事になります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です