Node中的MVC和前端中MVVM之间的区别

MVC

MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。

  • Model(模型)----模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。
  • View(视图)---- 视图代表模型包含的数据的可视化。
  • Controller(控制器)---- 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开。
    在这里插入图片描述

MVC 模式定义 Web 应用程序

带有三个逻辑层:

业务层(模型逻辑)

显示层(视图逻辑)

输入控制(控制器逻辑)

简单来说一个标准的Web 应用程式是由这三部分组成的:

  • View :用来把数据以某种方式呈现给用户
  • Model :其实就是数据
  • Controller :接收并处理来自用户的请求,并将 Model 返回给用户

MVVM

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

MVVM 由 Model、View、ViewModel 三部分构成:

Model代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑;
View 代表UI 组件,它负责将数据模型转化成UI 展现出来,
ViewModel 是一个同步View 和 Model的对象。

在MVVM架构下,View 和 Model 之间并没有直接的联系,而是通过ViewModel进行交互,Model 和 ViewModel 之间的交互是双向的, 因此View 数据的变化会同步到Model中,而Model 数据的变化也会立即反应到View 上。

MVC与MVVM之间的区别

在这里插入图片描述
MVC是后端分层开发的概念;

MVVM是前端视图层的概念,主要关注与视图层分离,也就是说:MVVM把前端的视图层分为三部分Model,View,VM(ViewModel)