MVC,MVP,MVVM,MVMP模式

經常聽到這些MVC,MVP,MVVM這些詞,其實這些都是設計模式或者說是構架範式,也就是你一個軟件從前端到後端構架的樣例模型。

MVC模式:
聽到最多的就是MVC模式,上學的時候就講過這個,Model(模型)-View(視圖)-Controller(控制器)。
我看有人把model稱之爲數據核心其實蠻有意思,因爲Model其實不只有數據,還有訪問接口的(瞭解這個的話其實後面關於MVVM要好很多),view向用戶做展示用的,controller要負責用戶的交互。

在這裏插入圖片描述
MVP模式
Model-View-Presentor
實際上MVP是對MVC框架的一次調整,當Model發生數據變化datachange事件,controller負責監聽並更新View。MVP和MVC重大不同是,View和Model是完全隔離的,所有的交互都是在Presentor裏來進行(你其實可以把這個Presentor看成Controller)。
在這裏插入圖片描述

MVVM模式
View-ViewModel-Model
通過下圖可以看到一些區別了,這邊view和model徹底斷開了,model有變化也要通過ViewModel來體現來傳達給view。爲什麼這樣搞有什麼好處?其實從實際上來看,我們的View並不一定給所有人展示的都是同樣的界面。所以有的時候,要數據綁定view上的一些屬性,做到局部響應局部更新。可以理解爲ViewModel是爲了View而設計的Model層,他的數據是和View是對應的。
在這裏插入圖片描述
MVMP
瞭解了MVVM和MVP其實MVMP就是兩者的有一次結合。
在這裏插入圖片描述
微信公衆號:我是坑貨

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章