動的な処理を行うWebSiteを勉強していて思った事は
思ったよりも簡単な事なのだけれど、記述様式的には
如何考えても面倒な事が多い。

結局行いたい事は

ユーザーから値を受け取る。
ユーザー単位で識別および情報を付与し管理する。
ユーザーの状態に応じた画面を表示する。

って事だけっぽい。

何かそう考えるとアドベンチャーゲームみたいだ。
ユーザーの現在位置
ユーザーのアクション
そういった事に対してのリアクション。

ルーム方式チャットルームをこういった考えでフロー化すると

IDとパスワードによりログインする
ユーザーコンポーネントにユーザーIDを付与する。
ユーザーIDよりDBからステータスを取得し、ユーザーコンポーネントに付与する

現在のステータスが入室中で有ればルーム発言画面を表示
現在のステータスが入室中で無ければルーム一覧を表示
現在のステータスがルーム一覧選択であれば入室時発言画面を表示

と言った形でステータスを付与し、またステータスによって画面遷移する形を
取れば画面遷移コントローラは単純化されるだろうな。っと。

ステータス状態に応じてテンプレートを取得し
テンプレートは必要なデータを取得しにいく
取得しにいく際にデータは一部表示系を動的に変移させる為の
表示フラグ、表示内容データ、ユーザー等固有のデータ等

また取りにいけるデータが無い場合は、対応する部位の表示を行わなかったり
エラーデータを取得しにいったりな感じ

つーか、何かのフレームワークだコレ。

んでもって取得するテンプレートが余りにも高機能だと
テンプレートとしての画面と言った機能は失われてしまうから
テンプレートを画面テンプレートと画面変移テンプレートの二つに分離し
二つのテンプレートをマージし、テンプレートを作成する形を取れないかなぁ