Android Architecture Components 是 Google 一套幫助開發者解決Android 架構設計的方案。
其中最常聽到android 設計架構為MVVM pattern:
Separation of concerns :職責分明當程式越寫越多可讀性與維護性較告
Dependency: 簡單來說view 建立 viewModel class , viewModel 建立 model class ,箭頭上往下箭頭。
View是Activity、Fragment或custom view,本身不做邏輯處理,當使用者跟UI有互動時將指令傳給 ViewModel處理,透過其獲得所需的資料並顯示。
ViewModel接收View的指令並對Model請求資料,將取得的資料保存起來供View使用。
Model管理所有的資料來源,例如API、資料庫和SharedPreference,當ViewModel來請求資料時從正確的來源取得資料並回傳。
reference:https://developer.android.com/topic/libraries/architecture
reference:https://www.notion.so/LiveData-and-viewModel-9-2-bfb163f6dbfc4a71b2388538514de089
reference:https://ithelp.ithome.com.tw/articles/10192829