NanoA の View-Controller 実装
- 簡潔な View-Controller モデル
- コンテナ指向
- 遅延ロードによる高速動作
てのが NanoA の特徴だと思うけど、View-Controller モデルの話。要点として、
- PATH_INFO の利用による、ディスパッチテーブルレス設計
- View と Controller が可換
てのは Shibuya.pm で話したけど、昨日、プラグインも Controller (あるいは View) として動作するようにした。というのは、たとえば OpenID に対応しようと思うと、API の追加と Controller の追加、の双方が必要が必要になるから。
一般論としても、プラグインと VC を区別すべき理由はないように思う。VC は共通クラス、プラグインは VC のサブクラス、でいいんじゃないか。