概要
Yii のアプリケーションは モデル・ビュー・コントローラ (MVC) デザインパターンに従って組織されます。 モデル は、データ、ビジネスロジック、規則を表現します。 ビュー は、モデルの出力表現です。 そして コントローラ は入力を受け取って、それを モデル と ビュー のためのコマンドに変換します。
MVC 以外にも、Yii のアプリケーションは下記の要素を持っています。
- エントリスクリプト: エンドユーザから直接アクセスできる PHP スクリプトです。 これはリクエスト処理サイクルを開始する役目を持っています。
- アプリケーション: グローバルにアクセス可能なオブジェクトであり、 アプリケーションコンポーネントを管理し、連携させて、リクエストに応えます。
- アプリケーションコンポーネント: アプリケーションと共に登録されたオブジェクトであり、リクエストに応えるための様々なサービスを提供します。
- モジュール: それ自身に完全な MVC を含む自己完結的なパッケージです。 アプリケーションは複数のモジュールとして組織することが出来ます。
- フィルタ: 各リクエストが実際に処理される前と後に、コントローラから呼び出される必要があるコードを表現します。
- ウィジェット: ビュー に埋め込むことが出来るオブジェクトです。コントローラのロジックを含むことが可能で、異なるビューで再利用することが出来ます。
下の図がアプリケーションの静的な構造を示すものです。