iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
0
自我挑戰組

Android App 初學者從零開始用Kotlin寫APP系列 第 18

<Day18>Android Architecture Components

  • 分享至 

  • xImage
  •  

Android Architecture Components 是 Google 一套幫助開發者解決Android 架構設計的方案。

  • Lifecycle-aware Components 管理activity and fragment lifecycles 生命週期
  • ViewModel 儲存界面相關的資料,這些資料不會在頁面轉換中消失。
  • Room 資料庫解決方案,並輕鬆地將 SQLite 資料轉換為 Java 對應物件。 Room 提供 SQLite 語法,支援 RxJava、Flowable 和 LiveData 。

其中最常聽到android 設計架構為MVVM pattern:

https://ithelp.ithome.com.tw/upload/images/20201001/20130598EepsFXnPMn.png

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


上一篇
<Day17>RecyclerView(下)
下一篇
<Day19>ViewModel
系列文
Android App 初學者從零開始用Kotlin寫APP30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言