1. 什么是MVVM?
MVVM 全称 Model-View-ViewModel,是一种软件架构设计模式,其核心就是 ViewModel。源自于经典的 MVC (Model-View-Controller) 模式。同时还有 MVP (Model-View-Presenter) 模式。
2. MVC,MVP,MVVM 的区别
1. MVC (Model-View-Controller) 模式:
- 模型—Model: 数据存储 (对数据的增删改查)
- 视图—View: 用户界面 (前端页面的渲染)
- 控制器—Controller: 业务逻辑 (路由,业务逻辑等)

2. MVP (Model-View-Presenter) 模式:
MVP 模式将 Controller 改名为 Presenter (主持人),同时改变了通信方向。

总结:
各部分之间的通信,都是双向的。
View 与 Model 不发生联系,都通过 Presenter 传递。
View 非常薄,不部署任何业务逻辑,而 Presenter非常厚,所有逻辑都部署在那里。
3. MVVM模式:
MVVM 模式将 Presenter 改名为 ViewModel,基本上与 MVP 模式完全一致。

总结:
View 请求更改 ViewModel,ViewModel 接收请求处理业务逻辑后,要求Model更改数据,Model将更改好的结果返回给ViewModel。
ViewModel 和 View是绑定的,ViewModel的变动自动反映在 View
网友评论