2012-05-07 9 views
1

model-view-controller-patternはJavaでよく使用されますか?
2つのコンポーネントだけを使用するのが一般的だと聞きました。そのため、ビューとコントローラーはモデルと通信する1つのコンポーネントにすぎません。モデルビューコントローラとJava

+0

[* A Swing Architecture Overview *](http://java.sun.com/products/jfc/tsc/articles/architecture/)も参照してください。 – trashgod

答えて

4

私は質問は答えることが広すぎるかもしれないが、あなたに物事を明確にすることだと思う:

  • MVCパターンは、多くの一般的なJavaのWebフレームワークで使用され、また、MVCモデル2は、一種のです人気があります。
  • モバイルアプリケーションを考えている場合、AndroidではMVCパターンも使用され、ビューとコントローラの役割は明確に定義されています。
  • デスクトップアプリケーションについて考えるならば、MVCパターンを使用するスイングフレームワークもあります。

あなたの質問に対する答えは:はい、MVCパターンは広くJavaで使用されていますが、通常はビューとコントローラーには独自の役割があります。その他のタイプのアプリケーションではあまりありません。

乾杯!

+1

+1はあなたの答えが私より優れているためです。 –

0

MVCは、Javaだけでなく、他のすべてのオブジェクト指向プログラミング言語で最も人気のあるデザインパタンの1つです。

コントローラは、要求を処理し、

ビュー

をコントローラに要求値を通過し、戻っ応答をレンダリングする責任があるビューに戻って応答をディスパッチとしてWeb層プレゼンテーションロジックを含みます

モデルは、ビューとコントローラに密接に作用します。

スプリングMVCとの単純な例...ビューから

    たURLに基​​づいて、関連するコントローラにそれを介してすべての要求をチャネリングフロントコントローラとして
  1. ディスパッチャサーブレット作用
  2. コントローラは、取得要求値(JSP)は&は、要求値を処理するモデルを移入応じ
  3. はORMフレームワーク(休止状態)に渡している人口モデル にデータを永続データベースまたは 移入モデルは、バックセッションまたは要求ビューに戻って値を表示するために使用される

  4. 可変範囲(JSP)を使用して、JSTLやEL

に追加されます

これは、典型的なWebアプリケーションでMVCを使用する非常に単純なシナリオです

+1

http://www.thecoderush.com/mvc-tutorial – Sanath

+0

チュートリアルは本当に良いものです! –

2

はい、Javaでは非常に一般的です。

JavaEEでは、javax.servlet.http.HttpServlet(サーブレット、コントローラ)によって構築されたJavaBean(モデル)と同じくらいシンプルで、要求属性としてJSPページ(ビュー)に転送されます。 HTMLなどのブラウザフレンドリな形式いくつかの標準、他のオープンソース、および一部の独占的なフレームワークも、複雑さを軽減したり、開発者の生産性を向上させるために、一般的に文法的な砂糖を使ったクリーンなMVC開発の聖杯を求めています。いくつかの大きな例はApache StrutsJavaServerFaces (JSF)です。ウィキペディアはJava MVC frameworksというまったくの概要を持っています。

MVSEを使用して設計されたGUIアプリケーションは、リスナーなどの豊富な技術にアクセスして、コントローラからビューへのモデルの変更や、ビューコンポーネントからコントローラへのユーザーのやりとりを通信できます。 Swingでは、ビューは、JTextFieldと同じくらいシンプルなものでも、かなりのコンポーネント/ウィジェットを含むJFrameの複雑なものでもかまいません。 Oracleは、パターンに関する概観文書を持っていますhere.

最後に、私は、私だけかもしれませんが、私は悲しんでリファクタリングを望んでいない組み合わせのビューとコントローラの例を見ていません。

0

MVCはモデルビューとコントローラの略です。これは、ビジネスロジック、プレゼンテーションロジック、およびデータを分離するデザインパターンです。コントローラは、ビューとモデルの間のインターフェイスとして機能します。コントローラは、すべての着信要求を傍受します。 Modelはアプリケーション(データ)の状態を表します。ビジネスロジックを持つこともできます。ビューはプレゼンテーション、すなわちUI(ユーザインタフェース)を表す。

関連する問題