#今日のテーマ
CRUDアプリの基礎部分を作り終えたので、今回はMVCモデルについて学んだことを投稿していこうと思います。
#MVCモデル
MVCモデルとは、ソフトウェア設計モデルの一つであり、プログラムの処理をModel,View,Controllerに分けて開発を行う方法のことである。
利点としては、役割別にすることで独立性が高くなり、依存性が少なくなることで、効率的なアプリケーション開発が行えることである。また、ある箇所の変更が他の要素に影響しにくくなるということも挙げられる。
#MVCモデルの概要
MVCモデルでは、以下のようにデータが処理されます(自分でまとめたものです)。ざっくりまとめると、
- ユーザーが、URLでアクセス
- ルーティングにより、必要なControllerに割り当てられる。
- Modelが必要なデータを取得する。
- 取得したデータをもとに、Viewを作成して、ControllerにHTMLを返す
- 生成したHTMLをユーザーに返す。
#Model
データベースとデータのやり取りを行うパーツ データベース内のデータを取得したり、データの更新や削除、新規作成などの機能を実装する。
#View
ユーザーが実際に見える画面の処理を行う。Webブラウザに表示する動的なHTMLを生成する。動的ページとは、アクセスした時の状況に応じて、データベースから取得したデータを埋め込んで異なるページを作成するものである。
#Controller
ユーザーの入力に基づいて、ModelとViewを制御する。ModelとViewの橋渡しをする役割 ユーザから受け取ったURLと、処理(コントローラーのアクション)を紐づけるのがルーティングである。
#まとめ
MVCモデルはソフトウェア設計パターンの一つであり、効率的なアプリケーション開発が行われる。