MVP模式
MVP
全称:Model-View-Presenter。
Model:提供数据
View:显示
Controller/Presenter负责逻辑处理
MVC与MVP区别:
MVP中,VIew不直接使用Model,它们之间的通信是通过Presenter(MVC中的Controller)来进行的,所有的交互都发生在Presenter内部。而在MVC中,View会直接从Model中读取数据,而不是通过Controller。
优势:
解决MVC分层不明确,耦合严重的问题。
View和Model完全隔离。
Presenter与View的具体实现技术无关。
可以进行View的模拟测试。
缺点:
接口类爆炸,造成类文件和接口文件过多。
View层和Presenter层的交互过于频繁。
内存泄漏的风险。