MVC和前端的MVVM的比較與聯絡

2021-09-11 07:44:49 字數 709 閱讀 8436

(傳統的mvc架構模式到mvc的演變,mvc模式可以看做是對三層架構中表現層的一種細分優化。以我的理解,mvc模式就是分層模式中表示層最常用的架構模式。)

詳細闡述:

嚴格說這三個加起來以後才是三層架構中的表現層,也就是說,mvc把三層架構中的ui層再度進行了分化,分成了控制器、檢視、實體三個部分,控制器完成頁面邏輯,通過實體來與介面層完成通話;而c層直接與三層中的業務邏輯層進行對話。三層和mvc可以共存。 三層是基於業務邏輯來分的,而mvc是基於頁面來分的。

三層架構的分層模式是典型的上下關係,上層依賴於下層。但mvc作為表現模式是不存在上下關係的,而是相互協作關係。即使將mvc當作架構模式,也不是分層模式。mvc和三層架構基本沒有可比性,是應用於不同領域的技術。

而前端的mvvm可以認為是mvc架構的演變,將傳統的mvc模式前移到了前端,同樣的m表示資料模型,資料處理,相當於mvc架構中的m資料模型層;而v層表示檢視層,和mvc架構中的v是一樣的。在之前的mvc架構中,m和v層之間需要c層控制器來聯絡,c處理業務邏輯,處理使用者輸入的資訊,負責從檢視讀取資料,控制使用者輸入,並向模型傳送資料,是應用程式中處理使用者互動的部分。負責管理與使用者互動互動控制。而在mvvm中,使用者的介面輸入和資料處理是自動通過vm即viewmodel來連線的,自動完成,不許要手動控制。而且model和viewmodel之間的互動是雙向的,因此檢視的資料的變化會同時修改資料來源,而資料來源資料的變化也會立即反應到view上。

MVVM和MVC的區別 前端必看

mvc模式 m model 資料模型 用於存放資料 v view 檢視 也就是使用者介面 c controller是model和view的協調者,controller把model中的資料拿過來給view使用。controller可以直接與model和view進行通訊,而view不能與controll...

MVC與MVVM的理解

mvc,mvp,mvvm是三種常見的前端架構模式,通過分離關注點來改進 組織方式。mvc模式是mvp,mvvm模式的基礎,這兩種模式更像是mvc模式的優化改良版,他們三個的mv即model,view都是相同的,不同的是mv之間的橋梁連線部分。本文是對的乙個總結。mvc允許在不改變檢視的情況下改變檢視...

MVC與MVVM的區別

mvc是model view controller的簡寫 模型 model 檢視 view 控制器 controller model 模型 是應用程式中用於處理應用程式資料邏輯的部分。view 檢視 是應用程式中處理資料顯示的部分。controller 控制器 是應用程式中處理使用者互動的部分。模型...