2011-11-10 14 views
2

私はMVCパターンでGoogleの検索をしましたが、私はまだ "モデル"の部分が何であるか正確にはわかりません。それは正確に何を扱うのですか?私はむしろ私が見つけることができるすべての説明が私の頭の上に行くようにプログラミングに新しいです。あなたが私に簡単な説明をすることができれば、本当に感謝しています。MVCパターンの「モデル」とは何ですか?

ありがとうございます。

+0

今は検索する時間がありませんが、これは重複しているとは思いません。 –

+0

重複:http:// stackoverflow。com/questions/1175932/what-exactly-the-model-in-mvc –

答えて

8

私はそれを「データ」部分と呼ぶのが最も簡単な方法です。データの取得や保存に対処する必要がある場合は、モデルに含まれています。 Webアプリケーションを使用している場合、モデルは通常、データベースやファイルシステムと対話する場所です。

+0

+1明確な説明のため –

+0

あなたの答えをありがとう。私は最終的に今それを理解すると思います。 :) – codedude

0

MVCのモデルは、UIによって提示されるデータがある場所です。したがって、ビジネスロジックを保持するスケルトンとして機能するドメインモデルと混同してはいけません。

確かに、データベースにバックアップされたCRUD操作のサービスとして機能する小さなアプリケーションの場合、これらの2つのモデルは同じにすることができます。実際のアプリケーションでは、それらをきれいに分離する必要があります。

コントローラは、アプリケーションサービスとドメインモデルと話す人です。 Viewによってレンダリングされるモデルを更新するアプリケーションサービスからの更新を受信します。

ビューは、モデルによって状態を保持し、ユーザーの入力を解釈し、コントローラーにリダイレクトします。コントローラは、モデルがすぐに更新されるか、または最初に情報がアプリケーションサービスに転送されるかを決定します。

0

モデルは、小規模なプロジェクトで "ドメインモデル"を表すことができます。ドメインモデルは、あなたが扱っている問題の現実のエンティティを表すクラスで構成されています。

大規模プロジェクトでは、ドメインモデルを実際のMVCアプリケーションから分離し、それ自体のプロジェクト/アセンブリを指定する必要があります。これらの大規模なプロジェクトでは、UIプレゼンテーションオブジェクト(DTO - データ転送オブジェクト)の "モデル"(つまり、MVCプロジェクトのモデルフォルダ)を予約します。

0

このモデルは、アプリケーションのデータを管理するためのものです。これには、データベースクエリやファイルIOなどが含まれます。

ビューは明らかにテンプレートであり、コントローラーはビジネスロジックです。

0

モデルは、使用しているデータを表すために使用されます。コントローラーは、データフローとデータで実行できるアクションを制御します。ビューは、データとコントローラに要求できるアクションを視覚化します。

単純な例は:

車は、車(車輪、エンジン、など)を表すプロパティを有するモデルです。

コントローラーは、ビュー、編集、作成、または購入や売却のようなアクションでも実行できるアクションを定義します。

コントローラは、データを表示するビューにデータを渡します。両方のビューでデータが表示され、ユーザーはそのデータを処理することができます。ただし、要求されたアクションは実際にコントローラによって処理されます。

関連する問題