MVC和MVP的比较
MVC:
Controller就是Activity(数据和界面进行结合)
Model就是数据访问层(数据)
在MVC模式中model与controller相互交互,view层和controller层相互交互。model层和controller层相互交互,controller层变得十分臃肿,对于二次开发和二次维护很困难。
MVP:
Presenter:自定义的一个Java类(用于连接View和Model,主要是一些逻辑判断)
Model:数据访问层
在MVP模式中model层实现数据访问,在presenter层处理数据的逻辑,在view层实现ui的更新。在mvp模式中,view层与presenter层相互交互,presenter层与model层相互交互。将app最频繁的数据请求和ui更新完全解耦,便于后期维护与数据更新。