我想知道这两种模式之间的区别。当您考虑时,您需要演示模型模式中的同步代码并且该代码在演示模型本身中,那么我认为这些模式非常相似。
两者都将事件委托给演示模型/演示者。演示模型和演示者命令域模型并且也观察域模型。在发生更改时,它们都与视图同步(因为表示模型中的同步代码在表示模型中)。
在我看来,不同之处在于,表示模型是视图的抽象形式。它描述了视图的状态和行为。因此它具有所有视图状态信息的属性。并且此信息通过同步代码同步。在被动视图中,演示者不一定被视为视图的抽象形式。因此演示者不一定具有表示视图状态的属性。所以演示者不会“同步”状态(控件的属性和演示者本身)。相反,他只是将域数据“复制”(更改)到控件。所以区别本质上是视图的抽象,表示模型提供,而在被动视图中,演示者可以被视为域数据的数据映射器。
到目前为止还可以吗?还是我错过了一些重要的事情?
谢谢和最好的问候帕特里克