標籤:mvvm 視圖 意思 反饋 href 業務 資料儲存 www 區別
其實我一直以來,雖然做的是前端的工作,但是有一個疑問,就是什麼是mvc模式,雖然大概知道,但是具體確實說不上來的的,今天,我就好好總結一下mvc ,mvp,mvvm模式的區別與相同。
1.MVC模式:
MVC模式的意思是:M(Model) V( View) C(Controller)
模型Model:資料儲存
視圖View:使用者介面
控制器(Controller):商務邏輯
總結來說就是:使用者介面(View) ==> 控制器*(Controller) 輸入內容/點擊 通過商務邏輯的更改,將內容返回給 ==> 模型(Model)資料通過儲存 ==> 返回給 使用者介面(View) 反饋給使用者
或者(可以MVC的一般流程是這樣的:View(介面)觸發事件--》Controller(業務)處理了業務,然後觸發了資料更新--》不知道誰更新了Model的資料--》Model(帶著資料)回到了View--》View更新資料)
2.MVP模式:
MVP模式的意思是:M(Model) V( View) P(Presenter)
模型Model:資料儲存
視圖View:使用者介面
Presenter:相當於(MVC中的Controller)
使用者介面(View)可以雙向訪問 <==> 控制器(Presenter) 通過商務邏輯的改變 <==> 資料儲存(Model)改變資料
3.MVVM模式:M(Model) V( View) VM(ViewModel)
模型Model:資料儲存
視圖View:使用者介面
控制器(ViewModel):更改商務邏輯
與MVP模式完全一致,唯一的區別是,它採用雙向繫結(data-binding):View的變動,自動反映在 ViewModel,反之亦然。Angular 和 Ember 都採用這種模式。
參考連結:http://www.ruanyifeng.com/blog/2015/02/mvcmvp_mvvm.html
MVC,MVP 和 MVVM 的區別之處