前端MVC、MVP、MVVM三種架構模式對比(限前端範疇)

MVC

在這裏插入圖片描述

問題:

  1. View不能獨立處理用戶事件
  2. 一個View對應一個Model,複用性差
  3. 適合無界面、多業務處理的後端使用

模式

主要使用的是策略模式

MVP

在這裏插入圖片描述

改良:

  1. 用戶事件由View處理
  2. ModelView完全解耦,View可抽離爲接口提供給上層使用
  3. View可抽離爲獨立組件,適合事件處理

問題

ModelView的數據同步需要Presenter手動綁定,Presenter過重

模式

主要使用的是觀察者模式

MVVM

在這裏插入圖片描述

改良

ViewModel自動同步,只需要指定View要顯示的數據對應哪一部分的Model即可。這種架構模式目前是最適合前端使用的。

總結

  1. MV*的目的是把數據、業務邏輯、界面三塊解耦,分離關注點
  2. 業務邏輯不再關注底層數據讀寫,而數據以對象形式導給業務邏輯
  3. 前端以界面邏輯爲主
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章