MVC MVP MVVM框架模式介紹

2021-10-04 19:24:32 字數 1766 閱讀 3932

寫這篇隨筆完全是為了加深自己的印象,畢竟寫比看能獲得得更多,另外本人對這三種模式的認識還是淺薄的,有待在以後的工作學習中有更深入的理解,因此不免會有誤解,這裡推薦大家閱讀廖雪峰關於mvvm的介紹,以及阮一峰的mvc,mvp 和 mvvm的圖示及談談mvc模式,相信您會有更深刻的理解。

mvc、mvp及mvvm都是一種架構模式,為了解決圖形介面應用程式複雜性管理問題而產生的應用架構模式。

1.即model、view、controller即模型、檢視、控制器。

2.舉乙個現實中的類似的例子,mvc如同一家商鋪的運作模式,view層相當於是這家商鋪的店面,model層相當於這家商鋪的倉庫,controller層相當於是這家商鋪的執行部門。

3.mvc有如下兩種模式,不管哪種模式,mvc的通訊都是單向的,由圖也可以看出,view層會從model層拿資料,因此mvc中的view層和model層還是存在耦合的。

1.mvp是從mvc進化而來,即model、view、presenter;view和model同mvc中的m和v,mvp只是將mvc中的controller變成了presenter;

2.由上面對mvc的介紹中我們可以得知,mvc中的view層和model層是存在耦合的,但其實我們不提倡view層與model層有直接的互動;mvp就是這樣一種思想的體現,view層與model的互動只能通過presenter;

3.mvp與mvc還有一點不同是,它的通訊是雙向的,如下圖所示,有兩個方向:v—>p—>m,m—>p—>v

1.mvvm是由mvp進化而來,mvvm模式基本上與mvp相同,只是把mvp中的p變成了vm,即viewmodel,

2.mvvm中的資料可以實現雙向繫結,即view層資料變化則viewmodel中的資料也隨之變化,反之viewmodel中的資料變化,則view層資料也隨之變化

3.這裡以前端框架vue舉例說明mvvm,當然還有許多有名的框架都用的是mvvm模式;mvvm的好處就是資料驅動,資料變,則頁面變,這樣就能用簡單的**,實現比較複雜的邏輯操作;因此mvvm框架比較適合邏輯複雜的前端專案,比如一些管理系統等。

1)準備檢視層

hello, }!

--view層 --vue中的單向繫結

--view層 --vue中的雙向繫結
2)準備資料層

data:
3)至於vm層,vue框架已封裝好,預知詳情可閱讀廖雪峰的部落格;

4)得益於mvvm框架,我們此時想改變檢視層的標籤和標籤中的name屬性的值,只需要通過如下方式即可,這樣頁面中就會顯示「jack」的名字,如果不是mvvm框架,我們則需要通過document.getelementbyid('name').innerhtml = 'jack',這種操作dom節點的方式來改變頁面的值。

this.name = 'jack'

開發模式 MVC MVP MVVM和MVX框架模式

mvx框架模式的了解 mvx框架模式 mvc mvp mvvm 1 mvc model 模型 view 檢視 controller 控制器 主要是基於分層的目的,讓彼此的職責分開。view通過controller來和model聯絡,controller是view和model的協調者,view和mod...

MVC MVP MVVM模式的區別

一 mvc模式 1.可以分為三個部分 2.對於三層之間的通訊 都是單向通訊 注 mvc中view會直接從model中讀取資料而不是通過controller,controller在其中只是乙個連線的作用 二 mvp模式 mvp從mvc演變而來,通過表示器將檢視與模型巧妙地分開。在該模式中,檢視通常由表...

MVC,MVP,MVVM三種模式

mvpmvvm 總結mvc model view controller 是最常見的軟體架構之一,業界有著廣泛應用。它本身很容易理解,但是要講清楚,它與衍生的 mvp 和 mvvm 架構的區別就不容易了。m model代表資料層 儲存資料 v view檢視層,使用者看到的介面 c controller...