mvc mvp mvvm

1.mvc

视图(View):用户界面。
控制器(Controller):业务逻辑
模型(Model):数据保存
mvc mvp mvvm_第1张图片

View 接受用户交互请求
View 将请求转交给Controller
Controller 操作Model进行数据更新
数据更新之后,Model通知View更新数据变化
View 更新变化数据

数据的通信是单向的

2.mvp

MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向。
mvc mvp mvvm_第2张图片
View 接收用户交互请求
View 将请求转交给 Presenter
Presenter 操作Model进行数据更新
Model 通知Presenter数据发生变化
Presenter 更新View数据

3.mvvm

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

mvc mvp mvvm_第3张图片
View 接收用户交互请求
View 将请求转交给ViewModel
ViewModel 操作Model数据更新
Model 更新完数据,通知ViewModel数据发生变化
ViewModel 更新View数据

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

你可能感兴趣的:(vue,mvp,mvc,mvvm,vue)