「Model View Controller」の版間の差分
imported>Administrator ページの作成:「'''Model View Controller'''(MVC)とは、1980年代にSmalltalkで確立されたアプリケーションのアーキテクチャパターン。 「'''M'''odel(...」 |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| (他の1人の利用者による、間の10版が非表示) | |||
| 1行目: | 1行目: | ||
'''Model View Controller''' | '''Model View Controller'''(MVC)とは、1980年代に[[Smalltalk]]で確立された[[アプリケーション]]の[[アーキテクチャパターン]]である。多くの場合、Model(モデル)、View(ビュー)、Controller(コントローラー)の頭文字をとったMVCという略称で呼ばれる。 | ||
[[モデル]]は[[データ]]と[[ビジネスロジック]](業務処理)、[[ビュー]]は表示処理、[[コントローラー]]はモデルとビューの連結を担当する。 | |||
== モデル == | |||
モデルは[[データ]]と[[ビジネスロジック]](業務処理)を記述する。 | |||
本来のモデルはビジネスロジックを記述するものだが、作り手によっては単純にデータベースとのマッピングをモデルとなっており、コントローラーにビジネスロジックが書いてあるようなシステムも結構見かける。 | 本来のモデルはビジネスロジックを記述するものだが、作り手によっては単純にデータベースとのマッピングをモデルとなっており、コントローラーにビジネスロジックが書いてあるようなシステムも結構見かける。 | ||
== ビュー == | |||
ビューは名前の通り見た目を表す部分を記述する。[[ウェブアプリ]]であれば[[HTMLテンプレート]]に相当する。 | |||
最近流行の[[jQuery]]あたりを使って[[JavaScript]]でゴリゴリ動かす処理などもビューである。 | 最近流行の[[jQuery]]あたりを使って[[JavaScript]]でゴリゴリ動かす処理などもビューである。 | ||
== | == コントローラー == | ||
コントローラーはモデルとビューを繋ぐ役割を担う。 | |||
コントローラーは大きくわけて[[ページコントローラー]]方式と[[フロントコントローラー]]方式があり、[[ASP.NET MVC]]ではフロントコントローラー方式が採用されている。 | |||
たとえばASP.NET MVCでは、すべてのリクエストはフロントコントローラで受け、ルーティング設定に従い、個々のコントローラクラスの[[アクションメソッド]](クラスメソッド)を呼び出す。 | |||
== 関連項目 == | == 関連項目 == | ||
* [[ASP.NET MVC]] | * [[ASP.NET MVC]] | ||
* [[デザイン・パターン]] | |||
** [[Model View ViewModel]] | |||
[[category: デザインパターン]] | |||
2025年3月5日 (水) 06:20時点における最新版
Model View Controller(MVC)とは、1980年代にSmalltalkで確立されたアプリケーションのアーキテクチャパターンである。多くの場合、Model(モデル)、View(ビュー)、Controller(コントローラー)の頭文字をとったMVCという略称で呼ばれる。
モデルはデータとビジネスロジック(業務処理)、ビューは表示処理、コントローラーはモデルとビューの連結を担当する。
モデル[編集 | ソースを編集]
本来のモデルはビジネスロジックを記述するものだが、作り手によっては単純にデータベースとのマッピングをモデルとなっており、コントローラーにビジネスロジックが書いてあるようなシステムも結構見かける。
ビュー[編集 | ソースを編集]
ビューは名前の通り見た目を表す部分を記述する。ウェブアプリであればHTMLテンプレートに相当する。
最近流行のjQueryあたりを使ってJavaScriptでゴリゴリ動かす処理などもビューである。
コントローラー[編集 | ソースを編集]
コントローラーはモデルとビューを繋ぐ役割を担う。
コントローラーは大きくわけてページコントローラー方式とフロントコントローラー方式があり、ASP.NET MVCではフロントコントローラー方式が採用されている。
たとえばASP.NET MVCでは、すべてのリクエストはフロントコントローラで受け、ルーティング設定に従い、個々のコントローラクラスのアクションメソッド(クラスメソッド)を呼び出す。