MVC、MVP 和 MVVM

MVC

程序可分爲三個部分:

  • 模型 (Model):數據保存
  • 視圖(View):用戶界面
  • 控制器(Controller):業務邏輯

各部分通信方式:

View
Controller
Model
  1. View 傳送指令到 Controller
  2. Controller 完成業務邏輯後,要求 Model 改變狀態
  3. Model 將新的數據發送到 View

實例:Backbone 的 View 很厚重,主要代碼邏輯都在裏面,而 Controller 很薄弱,只保留了一個 Router

互動模式:
一、

用戶
View
Controller
Model

二、

用戶
Controller
Model
View

MVP

MVP 模式將 Controller 改名爲 Presenter,同時修改了通信方向

View
Presenter
Model
  1. 各部分之間的通信都是雙向的
  2. View 和 Model 不發生聯繫,都通過 Presenter 傳遞
  3. View 很薄弱,而 Presenter 很厚重,所有代碼邏輯都在裏面

MVVM

MVVM 模式將 Presenter 改名爲 ViewModel,基本與 MVP 模式相同

data-binding
View
ViewModel
Model

唯一的區別是,它採用了數據雙向綁定(data-binding):View 的變動,自動反映在 ViewModel ,反之亦然

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