- ベストアンサー
フレームワークとは?MVCの理解が難しい理由とおすすめの解説サイト
- フレームワーク、特にMVCの理解が難しい理由とは?ソースを見てもピンとこないと感じる人におすすめの解説サイトを紹介します。
- フレームワークについては検索すれば解説してるページがあるものの、実際にソースを見ると理解できないことがあります。
- オブジェクト指向に詳しい人でもフレームワーク特有のMVCの理解が難しい場合があります。開発環境に必要なツールも知りたいという人にもおすすめの記事です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
Zend Frameworkは、PHPのMVCフレームワークの中では、比較的理解しやすいほうだと思う。とりあえず、個々の機能がそれほど深く融合してなくて単独で使えるので、あまり全体がわからなくても何とか理解できる。 ただ、基本的な概念はわからないとどうしようもないので、まずZendのドキュメントをごくざっと読んでおくことから始めたほうがいい。 http://framework.zend.com/manual/ja/ ただ、この本家のドキュメントは、機能ごとに順番にずらっと説明してあるので、全体の仕組みがいまいち見えてこないところがある。その前に、例えば、 http://codezine.jp/article/corner/42 このへんの連載とかをざっと読んで、基本的な仕組みとかを把握してからZendのドキュメントを読むといいと思う。まず、Zend_Controllerをしっかり理解し、続いてZend_View、それからZend_Dbあたりをよく勉強する。これでMVCの基本概念はわかるはず。 それと、よく「MVC」というけど、MVCフレームワークでもソフトによってかなり概念が違う。例えば、PHPで多用されてるCakePHP、Zend Framework、symfonyの3つを見ても、まったく違うというぐらいにアプローチが違ってる。だから、あんまりMVCがどうだとか意識しないで、「Zend Frameworkにはこういう機能がある」と感じでとらえたほうがいいと思うな。
その他の回答 (1)
- tany180sx
- ベストアンサー率63% (239/379)
ZFは柔軟?なので使い方によって結構変わってきますがざっくりと フロントコントローラ Zend_Controller_Front ↓リクエスト取得やプラグインを設定してディスパッチ ルータ Zend_Controller_Router ↓URLや設定を元に振り分け アクションコントローラ Zend_Controller_Action ↓DBからデータを取ったりして表示用のデータを作成 ビュー Zend_View ↓コントローラからのデータをHTMLなどにして表示 終わり 既存のシステムならルーティングの設定追加と モデル(DB)、アクションコントローラ、ビューの作り込みと思いますよ。
お礼
No.1さんの紹介サイトで一通り理解できました。 > 既存のシステムならルーティングの設定追加と > モデル(DB)、アクションコントローラ、ビューの作り込みと思いますよ。 仰る通りで、そうなるようです。 ありがとうございました。
お礼
CodeZineのサイトすごく参考になりました。 何年かぶりに「Hello World!」のページ作ることになりました(笑) フレームワークは、覚えるとかなり楽できるといった印象を受けました。 一から全部作らなくてもいいってのはかなり効率的ですね。 ただ、もしも手続き型のプログラムを経験せずに、 フレームワークから入ってしまったら本質的なところがわからないままに なってしまいそうとも思いました。 一番の感想として、これは違う言語なんじゃないのかっていうのがあります。 これから、Zend Frameworkのそれぞれのコンポーネントを理解していかなければいけないと思ってます。