字符百科

mvc是什么意思啊(MVC与MVVM的区别!)

时间:2024-09-21 10:05:54


01 MVC是啥?

MVC是一种架构思想,全称Model-View-Controller,即模型-视图-控制器,MVC是后端的开发思想,将数据从后端经过控制器层转向前端视图展示。

  • View:视图层 ui界面
  • Model:模型 数据
  • Controller:控制器 接受并处理用户请求通知Model改变,并将Model返回给 View

优点:

(1)耦合性低:视图层和业务层分离,这样允许更改视图层代码而不用重新编译模型和控制器代码,改变其中一个不会影响到其他两个,所以这种设计思想有良好的松耦合的构件

(2)重用性高:MVC模式允许各种不同样式的视图来访问同一个服务的代码,因为多个视图能共享要给模型数据。

(3)生命周期成本低:MVC使开发和维护用户接口的技术含量降低。

(4)部署快:使用MVC模式开发时间相当大的缩减,它使程序员集中精力在业务逻辑上,视图与业务逻辑分开。

(5)可维护性高:分离视图层和业务层逻辑也是WEB应用更易于维护和修改.

(6)有利于软件工程化管理:由于不同的层各司其职,每一层不同的应用具有某些特性,有利于通过工程化、工程化管理程序代码,可以使用控制器来连接不同的模型和视图去完成客户的需求.控制器可以根据用户需求选择模型进行处理,然后选择视图处理结果显示给用户

02 MVVM是啥?

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

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

  • Model:数据模型,存放用于展示的数据,有的数据是写死的,大多数是从后端返回的数据
  • View:视图,用于界面,在前端我们可以理解为Dom操作
  • ViewModel:视图模型,可实现数据的双向绑定,连接View和Model的桥梁,当数据变化时,ViewModel够监听到数据的变化(通过Data Bindings),自动更新视图,而当用户操作视图,ViewModel也能监听到视图的变化(通过DOM Listeners),然后通知数据做改动,这就实现了数据的双向绑定

优点:

(1)低耦合:视图View可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。

(2)可重用性:可以把一些视图逻辑放在ViewModel里面,让很多view重用这段视图逻辑。

(3)独立开发:开发人员可以专注业务逻辑和数据的开发,设计人员可以专注页面设计。

(4)可测试:界面向来比较难预测时,测试可针对ViewModel来写。

扩展小知识,为什么会有MVVM框架:

在过去的10年中,我们已经把很多传统的服务端代码放到了浏览器中,这样就产生了成千上万行的javascript代码,它们连接了各式各样的HTML 和CSS文件,但缺乏正规的组织形式,这就是为什么越来越多的开发者使用javascript框架,比如:angular、react、vue。浏览器的兼容性问题已经不再是前端的阻碍,前端的项目越来越大,项目的可维护性和扩展性、安全性等成了主要问题,当年为了解决浏览器兼容性问题,出现了很多类库,其中最典型的就是jquery,但是这类库没有实现对业务逻辑的分成,所以维护性和扩展性极差。

综上两方面原因,才有了MVVM模式一类框架的出现。比如vue,通过数据的双向绑定,极大了提高了开发效率。

03 MVC与MVVM的区别

(1)都是一种设计思想;

(2)MVC后端用的多,而MVVM是前端设计思想;

(3)MVC是单向通信,数据模型必须通过Controller层进行承上启下。MVVM是将View和Model实现自动同步,当Model属性改变时,不用再自己手动操作Dom元素,提高页面渲染性能。

相关推荐
长虹空调售后全国服务号码多少实时反馈-今-日-汇-总(长虹空调空调显示P1故障码,怎么处理?
)

长虹空调售后全国服务号码多少实时反馈-今-日-汇-总(长虹空调空调显示P1故障码,怎么处理? )

长虹空调以其卓越的安全性能和可靠的品质,成为众多用户的选择。然而,在使用过程中,可能会遇到长虹空调相关的问题,影响正常使用。本文将为您提供长虹空调的售后联系方式,并分析长虹空调的可能原因及解决方法。一、长虹空调售后联系方式长虹空调售后服务电话为 400-883-2086。该电话提供7

2025-08-04 06:24:23

极物空调400服务号码全国售后的热线实时反馈全+境+到+达(极物空调空调代码大全
)

极物空调400服务号码全国售后的热线实时反馈全+境+到+达(极物空调空调代码大全 )

极物空调售后服务电话是多少:400-883-2086极物空调一直以来以其卓越的品质和可靠的性能而闻名于世。为了提供更好的服务和支持给用户,极物空调专门设立了24小时服务热线。如果您有任何关于产品、安装、使用或维修方面的问题,您可以随时拨打极物空调的服务电话:(以产品说明书或保修卡电话为准)。

2025-08-04 06:23:15

SKG空调客服人工号码(全国统一)400客服热线实时反馈-今-日-汇-总(SKG空调空调app
)

SKG空调客服人工号码(全国统一)400客服热线实时反馈-今-日-汇-总(SKG空调空调app )

SKG空调全国24小时统一售后服务客服热线电话:400-883-2086我们专注于家电维修领域,尤其在SKG空调维护与修理方面拥有深厚的专业知识和丰富经验。我们的目标是确保您的生活设备始终处于最佳状态,让您无后顾之忧。作为一支技术精湛的家电维修团队,我们集结了一批经验丰富、技术娴熟的

2025-08-04 06:21:36

台佳空调全国各市24小时售后服务点热线号码实时反馈全+境+到+达(台佳空调空调显示F1故障码,怎么处理?
)

台佳空调全国各市24小时售后服务点热线号码实时反馈全+境+到+达(台佳空调空调显示F1故障码,怎么处理? )

台佳空调:保障您的财产安全在现代社会,人们对于财产安全的需求也日益增加,在人们的生活中扮演着不可或缺的角色。台佳空调作为国内领先的品牌,致力于为广大消费者提供高品质、可靠的产品和服务。台佳空调24小时售后客服热线:400-883-2086了解台佳空调:拨打全国统一专业维修电话

2025-08-04 06:21:35

日立(HITACHI)风管机售后服务维修号码实时反馈全+境+到+达(日立(HITACHI)风管机空调e6什么意思
)

日立(HITACHI)风管机售后服务维修号码实时反馈全+境+到+达(日立(HITACHI)风管机空调e6什么意思 )

在领域中日立(HITACHI)风管机逐渐崭露头角,成为包括日立(HITACHI)风管机公司售后服务热线400-883-2086和维修维修电话专线400-883-2086备受关注的品牌。那么日立(HITACHI)风管机究竟是何时名声大噪的呢?日立(HITACHI)风管机的声名鹊起并非偶然。在长

2025-08-04 06:21:26