mvc 和 mvvm

MVC是一种软件设计典范,将业务逻辑、数据和界面分离。它的优点包括低耦合性、高重用性和易于维护,但可能增加项目复杂性。MVVM模式进一步分离了UI和业务逻辑,常用于前端开发,Vue中,ViewModel作为数据和视图的桥梁,实现双向数据绑定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MVC的全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。它是用一种业务逻辑、数据与界面显示分离的方法来组织代码,将众多的业务逻辑聚集到一个部件里面,在需要改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑,达到减少编码的时间。

MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器

M:Model,模型。完成具体的业务操作,就是对数据的抽象,数据的封装。如:查询数据库,封装对象

V:view视图,就是UI表现层,提供与终端用户的交互

C:Controller控制器    获取view的请求,调用模型讲数据交给视图进行展示

优缺点

优点:1,耦合性低,方便维护,可以利于分工协作 

            2,重用性高   

            3,部署快,生命周期成本低 

             4,可维护性高

缺点:

        1,使得项目架构变得复杂,对开发人员要求高 

        2,调试困难   

        3,不适合小型,中等规模的应用程序

        4,视图与控制器间过于紧密的连接,并且降低了视图对数据模型的访问

MVVM模式

Model-View-ViewModel (MVVM) 模式有助于将应用程序的业务和呈现逻辑与其用户界面 (UI) 分开。 在应用程序逻辑和 UI 之间保持干净分离有助于解决许多开发问题,并使应用程序更易于测试、维护和改进。 它还可以极大地提高代码重用机会,并允许开发人员和 UI 设计人员在开发应用各自的部分时更轻松地进行协作。

MVVM 模式中有三个核心组件:模型、视图和视图模型。 每个服务都有不同的用途。

View负责前端展示,与ViewModel进行数据和命令的交互。

ViewModel,负责前端视图业务级别的逻辑结构组织,并将其反馈给前端。

Model,主要负责数据实体的结构处理,与ViewModel进行交互

在vue中  

Model就是数据模型也指数据层  可以是我们固定死的数据,也可以是来自服务器请求来的数据

View就是页面DOM也指视图层  主要就是向用户展示信息

ViewModel在vue中就是指vue实例也指数据模型层  充当View和Model之间通信的桥梁

1,M:模型(Model):对应data中的数据

2,V:视图(View):模板(页面结构)

3,VM:视图模型(ViewModel):Vue实例对象

MVVM采用双向数据绑定,view中数据变化将自动反映到viewmodel上,反之,model中数据变化也将会自动展示在页面上。把Model和View关联起来的就是ViewModel。ViewModel负责把Model的数据同步到View显示出来,还负责把View的修改同步回Model。
 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大王0111

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值