MVCモデル

MVCモデルとは…
Model(モデル)・View(ビュー)・Controller(コントローラー)と言う役割の総称です。

・Model
 システムの中でビジネスロックを担当する。
 ビジネスロック→「処理した結果をデータベースへ反映すること」みたいなことです。

 Controllerから受け取った処理に基づいて、必要なデータをDBで参照する。
 そして、DBから取得したデータを一時的に預かりControllerへ渡します。
 ※Modelはデータベースそのものではありません。
 コントローラーから受け取った処理からDBのデータを取得する役割です。

 主な処理
  ・データの検索
  ・データの変換
  ・データの検証…など

・View
 表示や入出力といった処理をします。
 コントローラーから渡されたデータをHTMLで表示するなどです。

 主な処理
  ・リクエストを取得する
  ・リクエストをコントローラーへ渡す
  ・コントローラーから受け取ったデータをHTMLなで出力する

・Controller
 ユーザーの入力に基づき、ModelとViewを制御します。
 Viewからのリクエストを受け取り、Modelへのメッセージに変換します。
 そして、レスポンスとして処理後の画面をViewに返します。

 主な処理
  ・ビューからリクエストを受け取る
  ・受け取ったリクエストに基づいて該当するアクションを実行しモデルに伝える
  ・モデリングされたデータをモデルから受け取り、レスポンスとしてビューへ返す。

Image from Gyazo