17

Model-View-Presenter パターンと Model-View-Adapter パターンに違いがあるかどうか、そしてもしそうなら、その違いは何かを理解しようとしています。それらを比較/対比するオンライン リソースが見つからないため、それらが実際に異なるかどうかさえわかりません。

私が見つけたそれらの説明は、本質的に私と同じように聞こえます。私が集めたものから、どちらの場合も制御フローは基本的に次のとおりです。

View <-- Adapter/Presenter --> Model
(where Adapter/Presenter can also respond to events from View and Model)

View: the UI
Adapter/Presenter: main logic; mediator between the UI and the data model
Model: the data model

アダプター/プレゼンターはビューとモデルを「知っています」が、ビューとモデルは自分以外の誰かについて知りません。

ここには完全に欠けている微妙な点があると思います。それは何ですか?

4

1 に答える 1

12

私が考えることができる唯一のことは、MVA は通常、ビューとモデルの間に複数のアダプターを持つことに関連付けられているということです。MVP でそれを行うことを妨げるものは何もありませんが、MVP は強力なトライアドを暗示していると思います。

更新 (数年後): 振り返ってみると、主な違いは制御フローだと思います。MVP では、ビューがプレゼンターをトリガー/作成/呼び出します。プレゼンターはモデルに委任し、ビューに応答します。MVA では、メッセージが着信すると、モデルとビューの間を仲介するアダプタが選択されます。MVP ビューはプレゼンターをトリガー/作成/呼び出しするため、(アダプターが選択されたときに) 複数のプレゼンターから選択することは単純ではありません。

于 2013-07-21T20:38:04.497 に答える