宝哥软件园

什么是MVC、MVP和MVVM分别_ Power Node Java Institute整理

编辑:宝哥软件园 来源:互联网 时间:2021-09-04

一、MVC

MVC模式意味着软件可以分为三个部分。

视图:用户界面。

控制器:业务逻辑

模型:数据保存

各部分之间的交流如下。

1.视图向控制器发送指令

2.2之后。控制器完成业务逻辑,它要求模型改变它的状态

3.模型向视图发送新数据,用户获得反馈

所有通信都是单向的。

二、互动模式

在接受用户指令时,MVC可以分为两种方式。一种是通过视图接受指令,并将它们传递给控制器。

另一种是直接通过控制器接受指令。

三.示例:主干

实际项目往往采用更灵活的方法,以主干网为例。

1.用户可以向View发送指令(DOM事件),然后View直接请求Model改变其状态。

2.用户也可以直接向控制器发送指令(改变URL触发hashChange事件),然后控制器将其发送给View。

3.控制器很薄,只起到路由的作用,而视图很厚,业务逻辑部署在视图中。因此,主干网只需取消控制器,只留下一台路由器。

第四,MVP

在MVP模式下,控制器被重命名为Presenter,并且通信方向被更改。

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

2.视图与模型无关,而是通过演示者传递。

3.视图很薄,没有部署业务逻辑,称为‘被动视图’,即没有主动性,而Presenter很厚,所有逻辑都部署在那里。

动词(verb的缩写)MVVM

MVVM模式将Presenter更改为ViewModel,这与MVP模式基本相同。

唯一的区别是它采用了数据绑定:视图的变化自动反映在视图模型中,反之亦然。Angular和ember都采用这种模式。

以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。

更多资讯
游戏推荐
更多+