Zend

MVCを用いた簡易アプリケーション

Zend FrameworkのMVCを覚えるためにMVCを用いた簡易アプリケーション「~さんこんにちは」を表示させようという魂胆覚書です。
こちら参考にしてます。

MVCとは

Model View Controller(モデル・ビュー・コントローラ; MVC)は、コンピュータ内部のデータをユーザに提示し、それに対してユーザが何らかの指示を出すタイプの、独自のユーザーインタフェースをもつアプリケーションソフトウェアを、以下に述べるようなmodel・view・controllerの3つの部分に分割して設計・実装するという技法、又はそのような構造をいう。

Model

そのアプリケーションが扱う領域のデータと手続き(ビジネスロジック - ショッピングの合計額や送料を計算するなど)を表現する要素である。また、データの変更をviewに通知するのもmodelの責任である(modelの変更を通知するのにObserver パターンが用いられることもある)。
多くのアプリケーションではデータの格納に永続的な記憶の仕組み(データベースなど)が使われている。MVCの概念では、データの(UI以外の)入出力は取り扱わないので、データアクセスも本来MVCの概念の範疇を超えるものではあるが、敢えていえばmodelの中に隠蔽されると考えられる。

View

modelのデータを取り出してユーザが見るのに適した形で表示する要素である。すなわちUIへの出力を担当する。例えば、ウェブアプリケーションではHTML文書を生成して動的にデータを表示するためのコードなどにあたる。

Controller

ユーザの入力(通常イベントとして通知される)に対して応答し、それを処理する要素である。すなわちUIからの入力を担当する。modelとviewに変更を引き起こす場合もあるが、直接に描画を行ったり、modelの内部データを直接操作したりはしない。
Model View Controller(wikipedia先生より)

準備

前回作ったhttp://localhost/zf/フォルダ内に制作します。
zfフォルダ内にappricationフォルダを作り、さらにその中にmodels、controllers、viewsフォルダを作ります。viewsフォルダ内には更にscriptsフォルダを作ります。
zf
└apprication
    └models
    └controllers
    └views
      └scripts

アプリケーションは基本的に外部からアクセスされないapplicationフォルダに配置します。そして公開フォルダにはフロントコントローラとなる「index.php」(と「.htaccess」)を配置します。こうすることでアプリケーションファイル群が直接アクセスされることはなくなり、セキュリティ面で有利になります。
Zend Framework入門(2):Hello World!アプリケーションの作成

あと文言覚えに下記メモしておく。
フロントコントローラ…(MVCのCに値する部分の総元締めで、すべてのリクエストをまず受けつける)
アクションコントローラ…(実際にリクエストに対する必要な処理を実行する)
アクション…(リクエストに対してアクションコントローラが行う処理)
ルーティング…(リクエストの内容を判断して受け渡し先を決定する処理のこと)
ディスパッチ…(アクションコントローラに以後の処理を受け渡すこと)

  • この記事を書いた人

ゆず

忘れないように自分の覚書と、誰かも困っているかもしれないので参考になればいいなくらいの軽い備忘録です。
一杯おごる

-Zend