整合了Jetpack Paging,View Model,Navigation,Compose
-
file-system:封装android 文件系统
-
ui-list: 封装Jetpack Paging, PagingAdapter
-
version-manager: 使用includeBuild 导入,暴露一个gradle plugin,用于依赖管理和配置管理
-
Bao:兜底异常
-
Yong:使用lint 检查未经捕获的异常
giant-explorer 文件管理器
ping 动态壁纸
-
禁止使用DataBinding 进行数据绑定和逻辑代码,特别是bindingAdapter。XML 本身就有很高的冗余,在XML 中写“代码”只会增加维护成本。
-
DataItemHolder 应该继承自添加了
ItemHolder
注解的接口。 -
基于状态,而不是事件
如果数据来源是事件,可以使用LiveData, Flow 转成状态。状态可以持久化,而事件不可以。
-
单一来源
如果确实存在多个来源,可以利用印章类,Optional<T>, Flow 等将不同来源的数据汇集成一个对象。
-
函数 > 类
代码实现优先选择函数,基本上就是“优先组合,而不是继承”的另一种描述。
使用函数构造一个实例也会比手动实例化更有优势。
-
更加通用==更加复杂==更难维护
更多信息访问wiki