7

私はこのトピックについていくつかの調査を行いましたが、MVVM パターンをいくつかのアプリケーションで既に使用しています。

MVVM は設計と呼ばれることもあれば、アーキテクチャ パターンと呼ばれることもあるため、この質問をしています。

ほとんどの場合、MVVM パターンはデザイン パターンと呼ばれます。ただし、個人的にはアーキテクチャに投票します。これは、アプリケーションのアーキテクチャを明確に定義するためです (たとえば、3 つのレイヤー、ビュー、ビューモデル、モデル、およびそれらが相互に対話する方法)。

このSO の質問と回答は、アーキテクチャ パターンとデザイン パターンの違いに関するものです。答えでは、MVC はアーキテクチャ パターンであると言われています。MVVM のほとんどすべての説明には、MVC との比較が含まれています。したがって、MVVM もアーキテクチャ パターンですか?

このmsdn の記事(非常に優れています) では、MVVM パターンをデザイン パターンと呼んでおり、その違いを本当に理解している人によって書かれています。

よくわかりません。デザインか建築パターンか?用語が混同されているだけですか?

編集:学士論文のためにこれを知る必要があります

4

1 に答える 1

7

私は、アーキテクチャ パターンを永続的な影響を伴う "決定" と考える傾向があります。それらはアプリケーションの骨組みを構成するため、それらから逃れることは困難です。

たとえば、ビューを構築する方法論から逃れるのは非常に難しいため、私はそれをアーキテクチャ パターンと呼んでいます。Microsoft は、ASP.NET WebForms を WinForms のように機能するように設計しました。プロジェクトの途中で、より多くの MVVM アプローチに切り替えることは困難でした。テクノロジ スタックとして WebForms を選択しただけでも、アプリケーションでできることに大きな影響を与えました。

私は設計パターンを実装の変形と考えています。それらは、アプリケーションの残りの部分に影響を与えることなく使用できます。通常、コードが変更されることを想定して、パターンにリファクタリングします。要するに、デザイン パターンは、将来の変更を容易にするためのものです。

明らかに、両者の間にあいまいな線があります。リポジトリ パターン (通常はアーキテクチャ パターンと見なされます) を検討してください。これは実際には、データ層へのファサード (またはプロキシ) です。ここで、設計パターンを繰り返し使用すること (それをアーキテクチャ パターンに昇格させること) を指摘しています。これは、システムの設計方法に影響を与えるためです。これでルールができました。データベースにアクセスするたびに、これ、これ、およびこれを実行します。

于 2013-03-15T15:22:40.353 に答える