MVC与MVVM

什么是MVC?

(1)MVC

在实际应用开发场景中,开发者常用的一种设计模式是MVC(eg:node(后端)中的MVC设计模式):

  • M(Model):数据模型层。是应用程序中用于处理应用程序数据逻辑的部分,模型对象负责在数据库中存取数据。

  • V(View):视图层。是应用程序中处理数据显示的部分,视图是依据模型数据创建的。

  • C(Controller):控制层。是应用程序中处理用户交互的部分,控制器接受用户的输入并调用模型和视图去完成用户的需求,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。

什么是MVVM?

(2)MVVM

  • M(Model):模型层。就是业务逻辑相关的数据对象,通常从数据库映射而来,我们可以说是与数据库对应的model。

  • V(View):视图层。就是展现出来的用户界面。

  • VM(ViewModel):视图模型层。就是与界面(view)对应的Model。因为数据库结构往往是不能直接跟界面控件一 一对应上的,所以,需要再定义一个数据对象专门对应view上的控件。而ViewModel的职责就是把model对象封装成可以显示和接受输入的界面数据对象。

 

MVVM与MVC的区别有:

1、MVVM各部分的通信是双向的,而MVC各部分通信是单向的;

2、MVVM是真正将页面与数据逻辑分离放到js里去实现,而MVC里面未分离。

 

posted on 2022-09-03 11:44  香香鲲  阅读(38)  评论(0编辑  收藏  举报