MVC和MVVM有什么区别

一、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实现了数据的双向绑定。

  • 3
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MVC(Model-View-Controller)和MVVM(Model-View-ViewModel)是两种常见的前端架构模式。 MVC是一种将应用程序分为三个部分的架构模式:模型(Model)、视图(View)和控制器(Controller)。模型负责数据存储和业务逻辑,视图负责显示数据,控制器负责协调Model和View之间的交互。 MVVM是一种基于MVC的架构模式,将控制器(Controller)替换为视图模型(ViewModel)。视图模型负责数据绑定和业务逻辑处理,将视图和模型之间解耦。视图模型将模型数据转换为视图所需的格式,并将用户交互传递给模型。 区别: 1. MVVM模式中的视图模型(ViewModel)与控制器(Controller)的区别:视图模型是一个用于为视图(View)提供数据和操作的抽象层,而控制器则是一个用于协调模型(Model)和视图(View)之间的交互的抽象层。 2. MVVM模式中,视图模型(ViewModel)通过数据绑定(Data Binding)技术,自动将模型数据与视图(View)同步,使得视图(View)可以直接从视图模型(ViewModel)中获取所需数据,而不需要再从模型(Model)中获取。 3. MVVM模式中,视图模型(ViewModel)还可以拥有一些自己的业务逻辑,使得视图(View)与模型(Model)之间的交互更加灵活和高效。 总之,MVVM相比MVC,增加了视图模型(ViewModel)的概念,可以让视图和模型之间的耦合度更低,代码更加清晰和易于维护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值