MVC和MVVM的區別

MVC和MVVM的區別
現在是市面上使用MVVM模型越來越多,相關的前端框架的選擇也相應增多。

那麼什麼是MVVM模型,它和傳統MVC模型有什麼區別,接下來我們來總結探討一下。
MVVM即Model-View-ViewModel的簡寫。即模型-視圖-視圖模型。模型(Model)指的是後端傳遞的數據。視圖(View)指的是所看到的頁面。視圖模型(ViewModel)是mvvm模式的核心,它是連接view和model的橋樑。它有兩個方向:一是將模型(Model)轉化成視圖(View),即將後端傳遞的數據轉化成所看到的頁面。實現的方式是:數據綁定。二是將視圖(View)轉化成模型(Model),即將所看到的頁面轉化成後端的數據。實現的方式是:DOM 事件監聽。這兩個方向都實現的,我們稱之爲數據的雙向綁定。
MVC是Model-View- Controller的簡寫。即模型-視圖-控制器。M和V指的意思和MVVM中的M和V意思一樣。C即Controller指的是頁面業務邏輯。使用MVC的目的就是將M和V的代碼分離。MVC是單向通信。也就是View跟Model,必須通過Controller來承上啓下。
MVVM和MVC的區別並不是VM完全取代了C,只是在MVC的基礎上增加了一層VM,只不過是弱化了C的概念,ViewModel存在目的在於抽離Controller中展示的業務邏輯,而不是替代Controller,其它視圖操作業務等還是應該放在Controller中實現。也就是說MVVM實現的是業務邏輯組件的重用,使開發更高效,結構更清晰,增加代碼的複用性。
- MVC中Controller演變成MVVM中的ViewModel
-MVVM通過數據來顯示視圖層而不是節點操作
-MVVM主要解決了MVC中大量的dom操作使頁面渲染性能降低,加載速度變慢,影響用戶體驗

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