MVC MVP MVVM原理和区别

@ MVC MVP MVVM原理和区别

MVC

MVC全名是Model View Controller,如图,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

其中M层处理数据,业务逻辑等;V层处理界面的显示结果;C层起到桥梁的作用,来控制V层和M层通信以此来达到分离视图显示和业务逻辑层。

在这里插入图片描述
在mvc中,视图可以直接操作Model

MVP

MVP和MVC没有太本质的区别,C和P负责M,V之间的交互,但MVP和MVC相比,M,V之间是完全隔离开的,而MVC中,View还是可以和Model进行交互的,这点可以在两个交互图中看出
在这里插入图片描述

MVVM原理和区别

在MVVM中的解耦,其实和MVP中类似,但是因为MVP中需要定义的接口太多,维护起来较为复杂,MVVP中就把MVP中P负责和V交互的内容给简单化了,让View直接和数据进行绑定,数据变化的时候View可以自己去更新界面。

https://github.com/lijianjun001/VVMM.git 这个地址是一个完美的MVVM的例子

猜你喜欢

转载自blog.csdn.net/w517272812/article/details/88739585