您的位置:首页 > 运维架构 > 网站架构

浅谈MVVM MVC MVP框架

2017-12-15 11:06 162 查看
(1) MVVM框架:

M : (model) 数据模型

V : (view) UI布局,展示数据。 view改变数据对象也跟着自动更新

VM : (ViewModel) controller 桥梁作用

MVVM:是把MVC框架里的Controller和MVP框架里的Presenter改成了ViewModel

MVVM 是Model-View-ViewModel的缩写,它是一种基于前端的开发框架,核心是提供View和ViewModel的数据双向绑定,这使得ViewModel 的状态改变可以自动传递给 View,即所谓的数据双向绑定。

Vue.js 是一个提供了 MVVM 风格的双向数据绑定的 Javascript 库,专注于View 层。它的核心是 MVVM 中的 VM,也就是 ViewModel。 ViewModel负责连接 View 和 Model,保证视图和数据的一致性,这种轻量级的架构让前端开发更加高效、便捷。  



MVVM框架的优点:

(1) MVVM 由 Model,View,ViewModel 三部分构成,Model 层代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑;View 代表UI 组件,它负责将数据模型转化成UI 展现出来,ViewModel 是一个同步View 和 Model的对象。

(2) 在MVVM架构下,View 和 Model 之间并没有直接的联系,而是通过ViewModel进行交互,Model 和 ViewModel 之间的交互是双向的, 因此View 数据的变化会同步到Model中,而Model 数据的变化也会立即反应到View 上。

(3) ViewModel 通过双向数据绑定把 View 层和 Model 层连接了起来,而View 和 Model 之间的同步工作完全是自动的,无需人为干涉,因此开发者只需关注业务逻辑,不需要手动操作DOM, 不需要关注数据状态的同步问题,复杂的数据状态维护完全由 MVVM 来统一管理。

(2) MVC框架

M : (model) 数据模型 包装一些应用程序和业务逻辑相关的数据处理

V : (view) 显示数据,UI布局

C : (controller) 控制模型和视图的联系,程序流程,并对事件作出响应

MVC 是Model-View-Controller的缩写,MVC是比较直观的框架模式,用户操作->View(负责接收用户的输入操作)->Controller(业务逻辑处理)->Model(数据持久化)->View(将结果反馈给View)。

(3) MVP框架

M : (model) 数据模型,数据处理

V : (view) 视图层

P : (presenter) 作为view和model的枢纽,负责处理一切业务逻辑

MVP是把MVC中的Controller换成了Presenter(呈现),目的就是为了完全切断View跟Model之间的联系,由Presenter充当桥梁,做到View-Model之间通信的完全隔离。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  架构 mvp mvc mvvm 前端