0
MVVM和MVA(模型 - 视图 - 适配器)有什么区别?MVVM和MVA(模型 - 视图 - 适配器)之间的区别
只要在两个图案:
- 的VM和适配器视图和模型之间进行调解。
- 可能有多个虚拟机和适配器参与这些模式相同的模式。
- 该模型直接与虚拟机和适配器交互。
我唯一想到的是,在MVVM中,VM不会收到来自Model的任何通知,但是在MVA中,适配器接收来自Model的通知!
那么这些模式的差异如何解释呢?
MVVM和MVA(模型 - 视图 - 适配器)有什么区别?MVVM和MVA(模型 - 视图 - 适配器)之间的区别
只要在两个图案:
我唯一想到的是,在MVVM中,VM不会收到来自Model的任何通知,但是在MVA中,适配器接收来自Model的通知!
那么这些模式的差异如何解释呢?
在这种article,马丁福勒概述了Presentation Model
图案,其中MVVM
是,可以说,其衍生物。
我并不熟悉MVA
变种,但假设它具有类似的品质和目标MVP
,使其具有可比性。
Presentation Model
模式与MVP
其他变体之间的主要区别在下面的引用中突出显示。
演示模型是一种模式,可从视图中提取演示文稿行为。因此,它是监督控制器和被动视图的替代方案。这对于允许您在没有UI的情况下进行测试,支持某种形式的多视图和分离关注点可能会使开发用户界面变得更加容易。
与被动视图和监督控制器相比,演示模型允许您编写完全独立于用于显示的视图的逻辑。您也不需要依赖视图来存储状态。缺点是您需要演示模型和视图之间的同步机制。这种同步可能非常简单,但它是必需的。