MVVM

由數據來驅動畫面更新,當資料改變時UI,會自動更新。生活上的例子:書讀得多,人自然就好看起來

主體是資料,由畫面去觀察資料的變化。跟以往資料變化通知畫面相反。

討論

MVVM 架構有幾個主要的優點:

  1. 資料驅動: 事件都透過資料的變化來觸發,資料成為最關鍵的因素。

  2. 下層元件不需要知道上層元件: 在 MVC / MVP 中,都需要有 View 的引用來更新 UI。但在 MVVM 中,由View 主動觀察資料,在資料變化後收到通知,而自動更新。 ViewModel 不需要知道 View 是誰。

  3. 職責分離: ViewModel 中可以減少大量通知 View 的程式碼,專心的管理流程。 Activity 和 Fragment 不用儲存資料狀態,可以專心管理介面的操作和顯示,並妥善控制生命週期。

Last updated