MVC模式:
视图(View):用户界面。控制器(Controller):业务逻辑模型(Model):数据存取
通信方式
- View 传送指令到 Controller
- Controller 完成业务逻辑后,要求 Model 改变状态
- Model 将新的数据发送到 View,用户得到反馈
MVP模式:
M-Model-数据的存取
V-View-用户界面
P-Presenter 业务逻辑
通信方式
1. 各部分之间的通信,都是双向的。
2. View 与 Model 不发生联系,都通过 Presenter 传递。
3. View 非常薄,不部署任何业务逻辑,称为"被动视图"(Passive View),即没有任何主动性,而 Presenter非常厚,所有逻辑都部署在那里。
Controlller/Presenter其实含义类似,只是MVC是三者单向操作,Model和View没有分离,而MVP必须通过Presenter来实现双向操作,Model和View完全分离,可重用性和扩展性更好。