MVC和MVP对比,自己的理解

都是自己的理解。

MVC

Android程序中,数据及处理逻辑(M),xml文件(V),Activity(C),就是一个MVC结构。

MVP

Android程序中,数据及处理逻辑(M),Activity(V),Presenter(C),是一个MVP结构。

优点

  • 耦合性低,将model和view完全分离,通过接口依赖注入的方式通信
  • 单一职责
  • 功能拆分,模块化,结构清晰,提高维护性,容易理解,容易写测试用例

缺点

  • 简单功能用的话,属于过度设计
  • 文件多了,每个view都配一个presenter

区别

  • MVC中view可以从model中获取数据,MVP中view和model完全分离
  • MVP文件多了

你可能感兴趣的:(MVC和MVP对比,自己的理解)