1

MVVM と MVA (Model-View-Adapter) の違いは何ですか?

両方のパターンである限り:

  1. VM とアダプタは、View と Model の間を仲介します。
  2. 同じモデルのこれらのパターンに複数の VM とアダプタが参加している可能性があります。
  3. モデルは、VM およびアダプターと直接対話します。

私の頭に浮かぶ唯一のことは、MVVM では VM はモデルから通知を受信しないが、MVA ではアダプターはモデルから通知を受信するということです!

では、これらのパターンの違いはどのように説明できるのでしょうか?

4

1 に答える 1

0

この記事では、Martin Fowler がPresentation Modelパターンの概要を説明していますが、これMVVMは間違いなく派生物です。

私はそのMVA亜種にあまり詳しくありませんが、類似した性質と目的を持っていると仮定してMVP、比較できるようにします。

Presentation Modelこのパターンと の他のバリアントとの主な違いは、MVP以下の引用で強調されています。

プレゼンテーション モデルは、ビューからプレゼンテーションの動作を引き出すパターンです。そのため、Supervising Controller と Passive View の代わりになります。これは、UI なしでテストできるようにしたり、何らかの形の複数ビューをサポートしたり、ユーザー インターフェイスの開発を容易にする懸念事項を分離したりするのに役立ちます。

パッシブ ビューや監視コントローラーと比較して、プレゼンテーション モデルでは、表示に使用されるビューから完全に独立したロジックを記述できます。また、状態を保存するためにビューに依存する必要もありません。欠点は、プレゼンテーション モデルとビューの間の同期メカニズムが必要なことです。この同期は非常に簡単ですが、必須です。

于 2016-09-27T12:31:13.230 に答える