欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

简述MVC、MVVM、MVP

程序员文章站 2024-02-26 16:06:40
...

MVC ,MVP,MVVM 的区别

一句话概括:
MVC(Model-View-Controller), 模块-视图-控制器, 由 MVC 衍生出的 MVP, MVVM。

  1. MVC
    MVC 的意思是, 软件可以分为三个部分。

简述MVC、MVVM、MVP
视图(View):用户界面.

控制器(controller):业务逻辑

模型(Model): 数据保存

1). View 传送指令 到 Controller

2). Controller 完成业务逻辑后, 要求 Model 改变状态。

3). Model 将新的数据发送到 View. 用户得到反馈

实际项目中 往往会采用更灵活的方法。

  1. MVP

MVP 模式将Controller 改名为 Presenter, 同时改变了通信方向。

简述MVC、MVVM、MVP

1). 各部分之间的通信, 都是双向的。

2). View 与 Model 不发生联系, 都通过 Presenter 传递。

3). View 非常薄, 不部署任何业务逻辑, 称为 被动视图,Presenter 非常厚, 所有逻辑都部署在那里。
  1. MVVM

MVVM 模式, 将Presenter 改名为 ViewModel.

简述MVC、MVVM、MVP
唯一的区别是, 它采用双向数据绑定,(data-binding) : View 的变动。自动反映在 ViewModel, 反之亦然。 Angular 和 Ember 都采用这种模式。