MVP(Model-View-Presenter) 是总所周知MVC模式的一个演变,他们的主要目的都是划分模块职责,降低模块耦合,易测试,提高代码复用,网上有很多相关的知识,这里仅是个人看法。
1、层级
Model:负责数据相关的操作
View:负责UI的绘制和用户的交互
Presenter:作为Model和View的中间协调部分,负责两者之间的业务逻辑处理
2、MVP的优缺点
优点:降低耦合,层级职责更明显,易于单元测试
缺点:造成类数量增多,在某些场景下presenter的复用会产生接口冗余