1,前言
公司內(nèi)部開發(fā)的孵化項(xiàng)目,最終并未上線,借此解析項(xiàng)目中對(duì)于aac架構(gòu)的實(shí)踐
項(xiàng)目已開源,地址 https://github.com/luxiao0314/viet_news
2,aac簡(jiǎn)介
- 介紹 :
AAC:就是由多個(gè)組件組合而成的架構(gòu)庫(kù),包含ViewModel、LiveData、Room、Lifecycles、DataBinding、Navigation、Paging、WorkManager;* 作用 :使用AAC模式,讓開放者更快捷的完成應(yīng)用程序的開發(fā) & 更容易維護(hù)與擴(kuò)展。
ViewModel:以注重生命周期的方式管理界面相關(guān)的數(shù)據(jù);
LiveData:在底層數(shù)據(jù)庫(kù)更改時(shí)通知視圖;
Room:流暢地訪問 SQLite 數(shù)據(jù)庫(kù);
Lifecycles:管理您的 Activity 和 Fragment 生命周期;
DataBinding:以聲明方式將可觀察數(shù)據(jù)綁定到界面元素;
Navigation:處理應(yīng)用內(nèi)導(dǎo)航所需的一切;
Paging:逐步從您的數(shù)據(jù)源按需加載信息;
WorkManager:管理您的 Android 后臺(tái)作業(yè); - 優(yōu)勢(shì) :
- 1.View 與 ViewModel 解耦;
- 2.層級(jí)架構(gòu)清明;
- 3.以生命周期的方式管理數(shù)據(jù);
3,項(xiàng)目結(jié)構(gòu)關(guān)系

image.png