首页 > Web开发 > 详细

浅析mvvm模式和mvc模式的区别和联系

时间:2021-06-06 16:46:01      阅读:11      评论:0      收藏:0      [点我收藏+]

三层架构与MVC模式

三层架构

三层架构是一种以实现“高内聚,底耦合”为目标,的代码架构方法,它将整个业务分为,表示层,业务层,数据访问层(Dao层)。
技术分享图片

MVC模式

MVC模式是一种软件设计的典范,一种组织代码的方法。

M 是 model 模型
V 是 view 视图
C 是 control 控制器

控制器是用来将不同的view和不同的model组织在一起。且mvc往往在三层架构中的表现层使用,如SpringMVC,Struct2等是优秀的用于表现层的mvc框架。MyBatis是常用于Dao层的框架。

区别

MVC是一种设计模式,是解决方案。三层架构是种软件架构方法。

MVVM模式

MVVM模式也是一种软件的架构模式,在它是(Model-View-ViewModel)的缩写,其核心是VM,VM是视图与模型之间的桥梁,它实现了视图与模型的相互映射。
技术分享图片
在MVVM中模型的改变会引起视图的改变,视图的改变会引发模型的改变。
技术分享图片

与MVC的异同

  1. MVVM没有MVC模式的控制器,也没有MVP模式的presenter,有的是一个绑定器。在视图模型中,绑定器在视图和数据绑定器之间进行通信。
  2. MVVM模式不同于MVC,在MVVM模式中,将ViewModel层绑定到View层后,它基本不使用点击事件,而是使用命令(Command)来控制。数据的显示也是不同于MVC,而是使用Binding来绑定相关数据。

MVVM实例

如VUE中的数据的双向绑定就是MVVM的一个应用:

<!-- 该dom下的div可以看作是view -->
<div id="example">{{message}}</div>

<script>
// data 可以看作是数据模型 model
// Vue对象vm就是ViewModel
var vm = new Vue({
  el: ‘#example‘,
  data: {message:‘zhangsan‘}
})
</script>

浅析mvvm模式和mvc模式的区别和联系

原文:https://www.cnblogs.com/flytree/p/14854935.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!