MVX02

  • 相较于MVP,MVVM在定义上就明确的多。PM模型与MVP比较,从视图层中分离了行为和状态。PM模式中创建了一个视图抽象。PM。而视图也成为这个模型的渲染结果。
  • PM模式是一种与平台无关的创建视图抽象的方法。Glossman的MVVM是专门用于VPF框架来简化用户界面的创建的模式。MVVM是在WPF平台上对于PM模式的实践。
  • PM模式将视图中的全部状态和行为放到一个单独的展示模型中,协调领域对象并且为视图层提供一个接口。在监督控制器中,视图层和模型层的一些简单属性进行绑定。在模型属性变化时,直接更新视图。而PM通过引入展示模型,将模型层中的数据与复杂的业务逻辑封装成属性与简单的数据t同时暴露给视图,让视图与展示模型中的属性进行同步。
  • 状态的同步。视图和展示模型状态的同步。视图的行为可能很少发生改变,但是视图状态的改变可能非常常见了。到目前为止,我们能够放置状态同步代码的地方其实只有2个,视图和展示模型。如果放在视图中,可能会影响视图的测试。大部分客户端程序没有完全测试,y影响也不大。如果代码放在展示模型中,为展示模型增加了视图的依赖,导致不同层级之间的耦合。
  • 同一个展示模型可以和多个领域对象交互。多个视图可以使用一个展示模型。但是每个视图只能有一个展示模型。
  • WPF框架。在MVVM的实现中,引入了一个隐式的Binder层。声明式的数据和数据绑定是在这完成。最为关键的是展示模型,视图模型创建了一个视图的抽象,将视图中的状态和行为抽离出一个新的抽象。
  • 各种架构模式的作用就是分离关注。将属于不同模块的g功能分散到合适的位置。
  • MVP使用presenter分离视图和模型层。彼此对对方一无所知。

你可能感兴趣的:(MVX02)