学习ASP.NET MVC框架揭秘笔记-MVP

1.2.1                      MVP

      MVP是一种UI架构模式,适用于基于事件驱动的应用框架。MVP中的MV分别对应MVCModelView,而PPresenter)代替了Controller

      在MVP模式中,能够与Model直接进行交互的仅限于PresenterView只能通过Presenter间接地调用ModelModel的独立性在这里得到真正的体现,他不仅仅与可视化元素的呈现无关,与UI处理逻辑(Presenter)也无关。

      MVP不仅仅避免了ViewModel之间的深度耦合,更进一步的降低了PresenterView的依赖。Presenter依赖的是一个抽象化的View,即具体View实现的接口IView,这带来的最直接的好处就是使定义在Presenter中的UI处理逻辑变得易于测试。由于PresenterView的依赖行为定义在接口IView中,我们只需要Mock一个实现了该接口的View就能对Presenter进行测试。

      PresenterModel之间的交互很清晰,他仅仅体现为PresenterModel的单向调用ViewPresenter之间该采用怎样的交互方式是整个MVP的核心,MVP针对关注点分离的初衷能否体现在具体的应用中,很大程度上取决于两者之间的交互方式是否正确。按照ViewPresenter之间的交互方式,以及View本身的职责范围,将MVP分为PVPassive View)和SCSuperVising Controller)两种模式。

1.PVSC

2.ViewPresenter交互的规则(针对SC模式)



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。