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

来源:互联网 发布:飞利浦淘宝授权 编辑:程序博客网 时间:2024/05/02 15:33

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模式)

3.实例演示:SC模式的应用




1 0