科技
类型
可以朗读
语音朗读
161千字
字数
2022-06-01
发行日期
展开全部
主编推荐语
本书从使用方法、应用原理、项目实战等维度详细介绍Jetpack。
内容简介
随着移动领域的飞速发展,越来越多的工程师开始追求更高效率、更便捷的开发模式。而各种框架层出不穷,比如我们熟悉的MVC、MVP、MVVM等,每种框架都有其优缺点。为了统一开发规范,Google推出了Jetpack,Jetpack是一个由多个库组成的套件,可帮助开发者减少样板代码。
全书代码均采用Kotlin语言开发。书中首先介绍Jetpack的基本知识,然后详细介绍了架构组件Lifecycle、ViewModel、LiveData、ViewBinding、DataBinding、Room、Hilt等,并通过切合实际的需求用例循序渐进地讲解了每个组件的使用方法和使用场景。紧接着具体分析了Kotlin数据流Flow、Kotlin协程等的使用方法和实现原理,并结合项目中常见的问题深入地讲解如何从0搭建一个组件化的MVVM实战项目框架。最后探讨了新的响应式UI编程技术——Jetpack Compose的用法,以帮助读者深入学习并理解Jetpack的应用场景。
目录
- 版权信息
- 作者简介
- 前言
- 第1章 认识Jetpack
- 1.1 Android开发架构的发展历程
- 1.2 什么是Jetpack
- 1.3 如何构建支持Jetpack的项目
- 1.4 小结
- 第2章 使用Lifecycle,感知生命周期
- 2.1 从广告引导页的需求说起
- 2.2 Lifecycle的基本使用
- 2.2.1 使用Lifecycle优化广告引导页的需求
- 2.2.2 自定义LifecycleOwner
- 2.3 使用Lifecycle解决实际项目中常见的问题
- 2.3.1 Dialog内存泄漏问题分析
- 2.3.2 使用Lifecycle打造一个完美的Dialog
- 2.4 原理小课堂
- 2.5 小结
- 第3章 使用ViewModel管理页面数据
- 3.1 什么是ViewModel
- 3.2 使用ViewModel解决广告引导页屏幕旋转问题
- 3.3 ViewModel的生命周期
- 3.4 使用ViewModel实现数据共享
- 3.5 原理小课堂
- 3.6 小结
- 第4章 可观察的数据持有者类LiveData
- 4.1 什么是LiveData
- 4.2 LiveData的基本使用
- 4.3 map与switchMap
- 4.4 原理小课堂
- 4.5 小结
- 第5章 视图绑定组件之ViewBinding
- 5.1 从findViewById说起
- 5.2 ViewBinding的基本使用
- 5.3 ViewBinding的封装优化
- 5.4 原理小课堂
- 5.5 小结
- 第6章 数据绑定组件之DataBinding
- 6.1 DataBinding的基本使用
- 6.1.1 基础布局绑定表达式
- 6.1.2 利用DataBinding绑定点击事件
- 6.1.3 标签布局使用DataBinding
- 6.2 自定义BindingAdapter
- 6.3 双向数据绑定
- 6.4 DataBinding与ViewBinding的区别
- 6.5 原理小课堂
- 6.6 小结
- 第7章 官方数据库框架之Room
- 7.1 Android数据库ORM框架
- 7.2 使用Room实现登录账号列表功能
- 7.2.1 账号列表的需求设计和数据库设计
- 7.2.2 准备工作
- 7.2.3 定义数据实体类
- 7.2.4 定义数据库访问对象
- 7.2.5 账号列表的查询与新增
- 7.2.6 账号列表的更新与删除
- 7.3 Room数据库的升级
- 7.4 原理小课堂
- 7.5 小结
- 第8章 减少手动依赖,探究Hilt
- 8.1 什么是依赖注入
- 8.2 基于Dagger看Hilt
- 8.3 Hilt的基本使用
- 8.3.1 添加依赖
- 8.3.2 依赖注入普通对象
- 8.3.3 依赖注入第三方组件
- 8.3.4 依赖注入架构组件
- 8.4 原理小课堂
- 8.5 小结
- 第9章 优雅地实现异步任务:Kotlin协程与Flow
- 9.1 什么是协程
- 9.2 使用协程优雅地实现异步任务
- 9.2.1 协程的基本用法
- 9.2.2 更多构建协程的方式
- 9.2.3 在Retrofit和架构组件中使用协程
- 9.3 Kotlin数据流
- 9.3.1 Flow的基本使用
- 9.3.2 探究StateFlow与SharedFlow
- 9.4 原理小课堂
- 9.5 小结
- 第10章 分页库Paging3的使用
- 10.1 Android中分页功能常见的设计方法
- 10.2 网络请求的封装与使用
- 10.3 使用Paging3实现网络数据的分页加载
- 10.3.1 官方推荐的最佳架构
- 10.3.2 PagingSource的定义与使用
- 10.3.3 PagingDataAdapter的定义与使用
- 10.3.4 将结果显示在UI上
- 10.3.5 监听加载状态
- 10.4 原理小课堂
- 10.5 小结
- 第11章 打造一个MVVM架构的健康出行App
- 11.1 项目需求设计与可行性分析
- 11.2 组件化结构的设计与搭建
- 11.3 查询城市数据
- 11.3.1 实现逻辑层代码
- 11.3.2 实现UI层代码
- 11.4 查询城市核酸检测机构
- 11.4.1 实现逻辑层代码
- 11.4.2 实现UI层代码
- 11.5 查询疫情风险等级地区
- 11.5.1 实现逻辑层代码
- 11.5.2 实现UI层代码
- 11.6 查询健康出行政策
- 11.6.1 实现逻辑层代码
- 11.6.2 实现UI层代码
- 11.7 小结
- 第12章 体验最新响应式编程技术Jetpack Compose
- 12.1 什么是Jetpack Compose
- 12.2 Compose的基础知识
- 12.2.1 新建支持Compose的Android项目
- 12.2.2 可组合函数与常用注解
- 12.3 Compose基础组件的使用
- 12.3.1 Compose文本组件和图片组件
- 12.3.2 Compose布局组件
- 12.4 Compose列表组件的使用
- 12.4.1 垂直列表组件LazyColumn的使用
- 12.4.2 水平列表组件LazyRow的使用
- 12.4.3 网格列表组件LazyVerticalGrid的使用
- 12.5 小结
展开全部
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。