一、MVC:

MVC是后端的分层开发概念。其中:

M:model,模型层。代表数据库中的数据源。

V:view,视图层。代表能看到的客户端页面,是根据模型数据创建的。

C:controller,控制层。代表业务逻辑,是模型层和视图层之间的桥梁,建立两者之间的关系。控制层本身是不会处理数据以及输出数据,他只是用来接受请求并决定用那个模型去处理请求,然后再确定用哪个视图来显示返回的数据。

假设用户进行一个input事件,这个事件就会在controller进行一个中转,通过controller去model里面获取数据,之后会返回给controller,controller接收到数据之后会返回给view,最后展示在页面上。所以说,controller相当于一个中转站。

采用MVC就可以用同一个model去调用不同的view(柱状图、表格),就会得到不同的页面展示形式。这样就可以减少model的代码量,更易维护model和view。

二、MVVM:

前端的视图层概念。它是MVC渐渐演化出来的一个形态,主要分离视图层和模型层。

M:model,模型层。代表渲染页面所依赖的数据源,是通过Ajax从服务端获取回来的数据,这些数据是用来将来渲染到页面上的。

V:view,视图层。负责将数据模型转化为UI展示出来呈现给用户,可以简单的理解为HTML结构。

VM:视图模型层,用来连接Model和View,是Model和View之间的通信桥梁。是vue的实例,是MVVM的核心。它的作用是当监听到DOM变化时,会自动的更新数据源里面所依赖的数据。而当修改了model数据源里面的数据时,VM又会自动的重新渲染页面。

MVVM实现了数据驱动视图和数据的双向绑定。

三、MVC和MVVM的区别

MVC是一个后端的开发思想,MVVM是一个前端的开发思想。

MVVM实现了数据的双向绑定。

MVC和MVVM有什么区别相关推荐

  1. MVC, MVP, MVVM比较以及区别(下)

    上一篇得到大家的关注,非常感谢.一些朋友评论中,希望快点出下一篇.由于自己对于这些模式的理解也是有限,所以这一篇来得迟了一些.对于这些模式的比较,是结合自己的理解,一些地方不一定准确,但是只有亮出自己 ...

  2. MVC MVP MVVM原理和区别

    MVC是指Modle,View和Controller,将界面,业务逻辑和控制器分开,是一种低耦合的设计方式,适用于简单的应用开发. 这种设计模式最简单,但问题有三: (1).View和Model相互可 ...

  3. mvc mvp mvvm比较以及区别

    MVC, MVP和MVVM都是用来解决界面呈现和逻辑代码分离而出现的模式. 软件中最核心的,最基本的东西是什么? 是的,是数据.我们写的所有代码,都是围绕数据的. 围绕着数据的产生.修改等变化,出现了 ...

  4. 第四十五课:MVC,MVP,MVVM的区别

    前端架构从MVC到MVP,再到MVVM,它们都有不同的应用场景.但MVVM已经被证实为界面开发最好的方案了. MVP 是从经典的模式MVC演变而来,它们的基本思想有相通的地方:Controller/P ...

  5. 什么是Vue.js?||为什么要学习流行框架||框架和库的区别?||MVC和MVVM的关系图解

    什么是Vue.js? Vue.js 是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App, Vue语法也是可以用于进行手机App开发的,需要借助于W ...

  6. mvvm模式和mvc的区别_Android 开发中的架构模式 -- MVC / MVP / MVVM

    预备知识 了解 Android 基本开发 看完本文可以达到什么程度 了解如何分析一个架构模式 掌握 MVC,MVP,MVVM 架构定义和实现 更多面试内容,面试专题,flutter视频 全套,音视频从 ...

  7. MVC与MVVM的区别

    MVC与MVVM MVC是Model-View- Controller的简写:模型(model) 视图(view) 控制器(controller) ​ Model(模型):是应用程序中用于处理应用程序 ...

  8. Android 系统(77)---MVC,MVP,MVVM的区别

    MVC,MVP,MVVM的区别 一.MVC 软件可以分为三部分 1.Model:模型层,负责处理数据的加载或者存储  2. View:视图层,负责界面数据的展示,与用户进行交互  3.Controll ...

  9. MVC与MVVM区别

    MVC 在MVC里,View是可以直接访问Model的!从而,View里会包含Model信息,不可避免的还要包括一些业务逻辑. MVC模型关注的是Model的不变,所以,在MVC模型里,Model不依 ...

最新文章

  1. Codeforces 894.D Ralph And His Tour in Binary Country
  2. android 获取视频缩略图终极解决方案(ffmpeg)
  3. sed编辑器: 非交互
  4. 【康拓展开逆康托展开】
  5. 关于移动端meta设置(未完待续)
  6. LeetCode 1832. 判断句子是否为全字母句
  7. springcloud hystrix入门简介(一)
  8. python分配问题_1.1python解决数学建模之席位分配问题
  9. CoreData手动创建托管对象子类时报错
  10. 理解iOS 8中的Self Sizing Cells和Dynamic Type
  11. 2021-11-03
  12. 程序员情人节生日表白源码合集总有一款能够打动她(附带烟花特效,520爱心)
  13. 软件设计模式之路-----装饰者模式
  14. Unity一般工程升级到HDRP
  15. 倍福TwinCAT3导入TwinCAT2项目的方法
  16. 心法利器[53] | 数据增强的现实应用思考
  17. 为何Adobe国际认证证书被那么多人吐槽,看完你就明白了
  18. 火狐浏览器保存书签不在书签工具栏显示
  19. 判断IP的正确与否(C语言)
  20. Windows 7中如何安装卸载IE11或重装IE10

热门文章

  1. 吃西瓜--爬虫系列之Request使用方法
  2. 字段是什么意思,ocpp文档里的FIELD(字段)
  3. 关于前端开发学习的反思与规划
  4. RN开发系列<5>--UI布局
  5. 网络直播插件大全 v1.2 下载
  6. 字符串转化为艺术字图片
  7. 【哈利波特】Sherbert Lemon对HP的解读之二
  8. 终于不用为了调试一个ARX(.net)程序而反复重新启动AutoCAD了!!!
  9. git 强制合并分支
  10. 对铁道部12306火车票购票网站的浅析