MVC

MVCの構造・パターンについて

LaravelのMVCであるモデル・ビュー・コントローラについての設定をしていきます。

MVCは複雑になりがちなプログラミングの処理を3つの役割に分割して実装する手法です。

比較的にはっきりと書くモジュールがわかれるので、プログラムの見通しがよくなります。

各機能について

コントローラの役割

コントローラとはビューとモデルを操作する部分です。

具体的にはビューからリクエストを受け取り、モデルへ処理の命令を出します。また、モデルから処理の結果を受け取り、レスポンスとしてビューへ返したりします。

ビューとモデルの仲介役だと思ってくれるとイメージしやすいと思います。

コントローラについて

ビューの役割

ビューとは、ユーザーが実際に見る画面を示しています。主にHTMLで書かれていますが、if文のようなプログラムコードも書かれます。

これは、コントローラから受け取ったデータを画面に表示したり、画面で処理を書いたほうが都合が良い時があるからです。

また、リクエストをコントローラへ送る役割も果たしています。

ビューについて

モデルの役割

モデルとは、ビジネスロジックを各部分です。簡単に言えば、データを処理したり、データをDBへ保存したりする部分になります。また、DBからデータを取得して、コントローラへ送る部分でもあります。

モデルについて

MVCモデルのまとめ

MVCモデルを採用しているフレームワークでは、ファイルがどこに保存されているかわかりやすいように、モデル・ビュー・コントローラそれぞれにディレクトリを分けてファイルを管理します。

それぞれの役割に応じてプログラムを書くため、分業してプログラムを書いたり、仕様変更する際には、ファイルだけ修正することが可能となっています。

実際にフレームワークやプロジェクトの方針などにより、それぞれにどこまでの役割を任せるかは大きく変わるため、この記事で説明した通りとは言い切れません。

しかし、MVCモデルというが異変があることを理解した上で、フレームワークを利用することは、効率的にコードを書いたり、可読性の高いコードを書く上で重要なためLaravelの諸学者向けにこの記事を書きました。

これからLaravelを始めるならこれが最適!!


今までLaravelに関しての良書はほとんどなく、あっても内容が古かったり分かりにくいのばかりで、先駆者達は苦労したのではないでしょうか?

そんな中で発売されたこの本は、現在の日本国内にて唯一のLaravelの良書と言い切っても良いかと思います。PHP中級者以上なら苦労することなく読めるでしょう。Laravelは高機能ゆえ、全機能を説明してはいませんが、この本をとっかかりにすれば自ずとLaravelをマスターすることができると思います。