仓库模块负责处理数据操作,提供了一个干净的API使得获取数据更加容易。仓库层知道从何处获取数据以及更新数据时要调用的API。你可以认为仓库层是作为中介在不通过的数据源之间,比如持久模型,Web服务,缓存等。
总结:**[遵循关注点分离原则](
)** 经过Repository中介层使得ViewModel不需要具体的数据来源,这样就可以根据需求将其交换为其他实现。
如果你想学习jetpack但是又缺少总结性的学习资料,我正好薅到这本阿里十年技术专家联合打造“最新”《Jetpack强化实战手册》,是你学习Jetpack的葵花宝典。下面正文开始:
[](
)一、初识ConstraintLayout之实现登录页面
1.创建项目
2.沉浸式的布局
3.富文本
4.属性动画
[](
)二、Navigation实践之实现APP主框架以及Navigation的相关介绍
1.搭建 Bottom Navigation Activity
2.导航界面跳转
3.Navigation传值
4.Navigation跳转动画
5.导航文件拆分
6.Deeplink导航
[](
)三、使用 Coroutines, Retrofit, Moshi实现网络数据请求
1.kotlin - Coroutine 协程
2.用协程和Retrofit实现网络请求
[](
)四、使用 TabLayout,ViewPager2 ,RecyclerView实现实现歌单广场页面
1.ViewPager2
2.TabLayout
3.RecyclerView
4.网络数据请求和数据填充
5.优化界面
[](
)五、歌单页面MVVM架构改造及其ViewModel和LiveData的使用介绍
1.MVC和MVVM介绍
2.修改歌单页面
[](
)六、Paging实现加载更多和下拉刷新,错误后重新请求
1.Paging的优势
2.Paging实现分页加载更多
3.Paging和SwipRefreshLayout组合实现下拉刷新
4.给RecyclerView添加加载状态的Footer
5.发生网络错误后重试
6.帧动画
[](
)七、vlayout嵌套横向RecyclerView和Banner 实现主页的展示,自定义Moshi的JsonAdapter
1.vlayout架构分析
2.vlayout布局介绍
3.基础工作准备
4.vlayout实现轮播图
5.字段内容类型不一致
[](
)八、Room数据库实现增删改查和事务处理
1.添加Room依赖
2.Room详细介绍
3.DataBase创建时插入数据
4.Room实现歌单标签编辑界面的增删改查
[](
)九、Room数据库Migration
1.新建 Entity
最后说一千道一万,不如自己去行动。要想在移动互联网的下半场是自己占有一席之地,那就得从现在开始,从今天开始,马上严格要求自己,既重视业务实现能力,也重视基础和原理。基础夯实好了,高楼才能够平地而起,稳如泰山。