1. 程式人生 > 其它 >MVVM框架模式

MVVM框架模式

MVVM模式即:

1、Model:資料層。網路資料操作,file檔案操作,本地資料庫操作;

2、View:檢視層。佈局載入,ui互動。

3、ViewModel:vm,關聯層。資料變化自動更新繫結的view,view的操作更新繫結的資料;

MVVM與MVP非常類似,唯一的區別就是View和Model進行了雙向繫結(通過data-binding),兩者之間有一方發生變化就會反應到另一方上。

優點:

1、view和model 雙向繫結,簡化開發者的工作,不用專注於更新檢視,只需要專注於實現業務邏輯;

2、繫結的model 簡化了model的邏輯控制;

缺點:

1、view和model的繫結,使頁面異常追蹤變得 不方便,可能是view導致的bug,也可能使model導致的;

2、資料雙向繫結不利於程式碼重用,View都綁定了一個model,不同模組的model都不同,就不能重用View;

所以在我的專案中,並沒有採用雙向繫結的方式,只使用了data-dingding找控制元件的功能。

那資料變化怎麼通知view去改變呢?

通過LiveData。LiveData放在ViewModel中,資料變化重新整理LiveData,而View中監聽了LiveData

轉載請標明:https://www.cnblogs.com/tangZH/p/14221147.html

參考:https://www.jianshu.com/p/5e0860ce475a