您好,登錄后才能下訂單哦!
mvvm模式和mvc模式有什么區別?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
區別:MVC中Controller演變成了MVVM中的viewModel。MVVM主要解決了MVC中大量的DOM操作帶來的使頁面渲染性能降低,加載速度變慢等問題。MVVM中當和Model頻繁發生變化,開發者需要主動更新到View。
一、什么是MVVM?
在MVVM框架下視圖和模型是不能直接通信的,只能通過ViewModel進行交互,它能夠監聽到數據的變化,然后通知視圖進行自動更新,而當用戶操作視圖時,VM也能監聽到視圖的變化,然后通知數據做相應改動,這實際上就實現了數據的雙向綁定。并且V和VM可以進行通信。
圖片示例如下:
MVVM模式的優點:
低耦合:View可以獨立于Model變化和修改,一個ViewModel可以綁定到不同的View上,當View變化的時候Model可以不變,當Model變化的時候View也可以不變。
可重用性: 可以把一些視圖邏輯放在一個ViewModel里面,讓很多View重用這段視圖邏輯。
獨立開發: 開發人員可以專注于業務邏輯和數據的開發,設計人員可以專注于頁面的設計。
二、什么是MVC?
MVC是應用最廣泛的軟件架構之一,一般MVC分為:
Model(模型),View(視圖),Controller(控制器)。 這主要是基于分層的目的,讓彼此的職責分開.
View一般用過Controller來和Model進行聯系。
Controller是Model和View的協調者,View和Model不直接聯系。基本都是單向聯系。
M和V指的意思和MVVM中的M和V意思一樣。C即Controller指的是頁面業務邏輯。MVC是單向通信。也就是View跟Model,必須通過Controller來承上啟下。
三、mvc與mvvm的區別:
MVC和MVVM的區別并不是VM完全取代了C,ViewModel存在目的在于抽離Controller中展示的業務邏輯,而不是替代Controller,其它視圖操作業務等還是應該放在Controller中實現。也就是說MVVM實現的是業務邏輯組件的重用。
- MVC中Controller演變成MVVM中的ViewModel
-MVVM通過數據來顯示視圖層而不是節點操作
-MVVM主要解決了MVC中大量的dom操作使頁面渲染性能降低,加載速度變慢,影響用戶體驗等問題。
關于mvvm模式和mvc模式有什么區別問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。