1,前言
公司内部开发的孵化项目,最终并未上线,借此解析项目中对于aac架构的实践
项目已开源,地址 https://github.com/luxiao0314/viet_news
2,aac简介
- 介绍 :
AAC:就是由多个组件组合而成的架构库,包含ViewModel、LiveData、Room、Lifecycles、DataBinding、Navigation、Paging、WorkManager;* 作用 :使用AAC模式,让开放者更快捷的完成应用程序的开发 & 更容易维护与扩展。
ViewModel:以注重生命周期的方式管理界面相关的数据;
LiveData:在底层数据库更改时通知视图;
Room:流畅地访问 SQLite 数据库;
Lifecycles:管理您的 Activity 和 Fragment 生命周期;
DataBinding:以声明方式将可观察数据绑定到界面元素;
Navigation:处理应用内导航所需的一切;
Paging:逐步从您的数据源按需加载信息;
WorkManager:管理您的 Android 后台作业; - 优势 :
- 1.View 与 ViewModel 解耦;
- 2.层级架构清明;
- 3.以生命周期的方式管理数据;