Vue 基础【1】— MVVM模式

2020-09-25  本文已影响0人  弱冠而不立

参考文章:阮一峰 MVC,MVP 和 MVVM 的图示

1. 什么是MVVM?

MVVM 全称 Model-View-ViewModel,是一种软件架构设计模式,其核心就是 ViewModel。源自于经典的 MVC (Model-View-Controller) 模式。同时还有 MVP (Model-View-Presenter) 模式。

2. MVC,MVP,MVVM 的区别

1. MVC (Model-View-Controller) 模式

各部分之间通信如图。View 请求接口到 Controller,Controller处理好业务逻辑之后,要求Model相应地改变数据,最后Model处理好数据之后,将新的数据返回给View

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

View 请求接口到 Presenter,Presenter 处理好逻辑要求 Model 改变数据,Model更改好数据后,发送更改好的数据到 Presenter,Presenter再将结果返回给 View

总结
各部分之间的通信,都是双向的。
View 与 Model 不发生联系,都通过 Presenter 传递。
View 非常薄,不部署任何业务逻辑,而 Presenter非常厚,所有逻辑都部署在那里。

3. MVVM模式
MVVM 模式将 Presenter 改名为 ViewModel,基本上与 MVP 模式完全一致。

和 MVP 模式的区别是,它采用双向绑定(data-binding):ViewModel的变动,自动反映在 View

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

上一篇下一篇

猜你喜欢

热点阅读