Kotlin移动应用开发(德)彼得·佐默霍夫(Peter Sommerhoff)pdf下载

Kotlin移动应用开发(德)彼得·佐默霍夫(Peter Sommerhoff)百度网盘pdf下载

作者:
简介:Kotlin移动应用开发(德)彼得·佐默霍夫(Peter Sommerhoff)
出版社:
出版时间:2020-05
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

作  者:(德)彼得·佐默霍夫(Peter Sommerhoff) 著 陈洋,王亚鑫,康颢曦 译
定  价:99
出 版 社:机械工业出版社
出版日期:2020年05月01日
页  数:334
装  帧:平装
ISBN:9787111650935
译者序

前言
部分学习Kotlin
章Kotlin简介2
1.1Kotlin是什么2
1.2Kotlin的目标和语言特性3
1.3为什么在Android系统开发中使用Kotlin4
1.3.1Android中的Java4
1.3.2Android中的Kotlin5
1.4Kotlin与Java85
1.5支持的工具与社区6
1.6商业角度6
1.7谁在使用Kotlin7
1.8本章小结8
第2章走进Kotlin9
2.1KotlinREPL交互式编程命令行9
2.2变量和数据类型10
2.2.1变量声明10
2.2.2基本数据类型11
2.2.3类型推导12
2.3条件语句13
2.3.1将if和when作为语句13
2.3.2条件表达式15
2.4循环和范围17
2.4.1while循环17
2.4.2for循环17
2.5函数19
2.5.1函数签名19
2.5.2单行表达式函数的简写方式20
2.5.3main函数20
2.5.4参数默认值和指定参数名称21
2.5.5扩展函数22
2.5.6中缀函数24
2.5.7运算符函数25
2.6空安全26
2.6.1可空类型26
2.6.2可空类型的使用27
2.7相等性检查29
2.8异常处理30
2.8.1异常处理的原则30
2.8.2Kotlin的异常处理31
2.8.3Checked异常和Unchecked异常32
2.9本章小结33
第3章Kotlin中的函数式编程34
3.1函数式编程的目的34
3.2函数36
3.3Lambda表达式37
3.4高阶函数38
3.5集合的使用41
3.5.1集合API在Kotlin与Java中的区别42
3.5.2在Kotlin中实例化集合42
3.5.3集合的访问和编辑43
3.5.4过滤集合44
3.5.5映射集合44
3.5.6集合分组45
3.5.7集合关联46
3.5.8计算小值、大值,以及和46
3.5.9集合排序46
3.5.10折叠集合47
3.5.11链式函数调用49
3.6作用域函数49
3.6.1let函数的使用49
3.6.2apply函数的使用50
3.6.3with函数的使用51
3.6.4run函数的使用52
3.6.5also函数的使用54
3.6.6use函数的使用54
3.6.7组合高阶函数55
3.6.8带接收者的Lambda56
3.7惰性序列57
3.7.1惰性计算57
3.7.2使用惰性序列58
3.7.3惰性序列的性能60
3.8本章小结62
第4章Kotlin中的面向对象63
4.1类和对象的实例化63
4.2属性
4.2.1属性和字段65
4.2.2getter和setter66
4.2.3延迟初始化属性67
4.2.4委托属性68
4.2.5预定义委托69
4.2.6委托给map71
4.2.7使用委托的实现72
4.3方法73
4.3.1扩展方法74
4.3.2嵌套类和内部类75
4.4主构造函数和次构造函数76
4.4.1主构造函数76
4.4.2次构造函数77
4.5继承和重写规则78
4.5.1接口78
4.5.2抽象类80
4.5.3开放类81
4.5.4重写规则81
4.6类型检查和转换82
4.6.1类型检查82
4.6.2类型转换82
4.6.3智能转换83
4.7可见性84
4.7.1类或接口中的声明84
4.7.2声明86
4.8数据类86
4.8.1使用数据类87
4.8.2数据类的继承88
4.9枚举89
4.10密封类91
4.11对象和伴生93
4.11.1把对象声明为单例95
4.11.2伴生对象95
4.12泛型97
4.12.1泛型类和泛型函数97
4.12.2协变和逆变101
4.12.3声明处型变104
4.12.4使用处型变107
4.12.5受限的类型参数109
4.12.6星形投影110
4.13本章小结112
第5章与Java的互操作性113
5.1在Kotlin中使用Java代码113
5.1.1调用getter和setter114
5.1.2处理可空属性115
5.1.3转义冲突的Java标识符119
5.1.4调用可变参数方法120
5.1.5使用操作符120
5.1.6使用SAM类型121
5.1.7关于互操作性更进一步的考虑121
5.2在Java中使用Kotlin代码122
5.2.1访问属性122
5.2.2将属性作为字段公开124
5.2.3使用文件级声明125
5.2.4调用扩展函数126
5.2.5访问静态成员127
5.2.6生成重载方法129
5.2.7使用密封类和数据类130
5.2.8可见性131
5.2.9获取KClass132
5.2.10处理签名冲突132
5.2.11使用内联函数133
5.2.12异常处理134
5.2.13使用可变类型135
5.2.14Nothing类型136
5.3互操作的佳实践137
5.3.1写出对Kotlin友好的Java代码137
5.3.2写出对Java友好的Kotlin代码137
5.4本章小结138
第6章Kotlin中的并发140
6.1并发140
6.1.1普遍难题142
6.1.2先进的解决方案143
6.2Kotlin中的协程146
6.2.1引入协程146
6.2.2基本概念147
6.2.3挂起函数147
6.2.4协程构建器150
6.2.5生成器169
6.2.6actors和channels171
6.2.7并发样式178
6.2.8协程实践178
6.2.9内部实现183
6.3本章小结185
第二部分使用Kotlin进行Android开发
第7章使用Kotlin进行Android应用程序开发:KudooApp188
7.1在Android上配置Kotlin188
7.1.1在AndroidStudio上使用Kotlin188
7.1.2自动生成Gradle配置188
7.1.3修改Gradle配置190
7.1.4使用注解处理器191
7.1.5把Java代码转换成Kotlin192
7.2编写待办事项列表应用Kudoo192
7.2.1创建项目193
7.2.2添加RecyclerView195
7.2.3添加Room数据库203
7.2.4使用ViewModel208
7.2.5集成LiveData212
7.2.6添加新的待办事项214
7.2.7启用检查待办事项218
7.3本章小结219
第8章使用Kotlin进行Android应用程序开发:Nutrilicious221
8.1新建并配置项目222
8.2为主页面添加RecyclerView223
8.2.1为MainActivity布局223
8.2.2为RecyclerView的项目布局224
8.2.3实现Food模型226
8.2.4实现RecyclerView的适配器226
8.2.5在MainActivity中添加RecyclerView228
8.3调用Nutrition的API从USDA中拉取数据230
8.3.1使用Retrofit230
8.3.2执行API请求235
8.4映射JSON数据和领域类236
8.4.1将JSON数据映射到数据传输对象237
8.4.2将数据传输对象映射为model类239
8.5在搜索逻辑中使用ViewModel241
8.6增加搜索食品功能243
8.7介绍FragmentI:实现搜索Fragment246
8.8介绍FragmentII:实现收藏Fragment254
8.9在Room数据库中存储用户收藏食品数据258
8.10从USDA食品报告API中拉取营养详情数据265
8.11集成详情页270
8.12在数据库中存储食品详情277
8.13为可操作的数据添加RDI282
8.14优化用户体验286
8.14.1在搜索页面增加结果为空时的说明286
8.14.2在详情页增加进度说明287
8.15本章小结288
第9章KotlinDSL289
9.1DSL简介289
9.1.1什么是DSL289
9.1.2优点和缺点290
9.2在Kotlin中创建DSL292
9.2.1使用DSL来构建复杂对象292
9.2.2通过构建器来保持不变性294
9.2.3深入嵌套296
9.2.4@DslMarker注解简介298
9.2.5语言特性299
9.3DSL在Android布局中的应用——使用Anko301
9.3.1在代码中创建布局301
9.3.2Anko依赖302
9.3.3使用Anko创建布局303
9.3.4添加布局参数303
9.3.5将Kudoo中的AddTodoActivity的布局迁移到Anko布局304
9.3.6增加自定义view306
9.3.7比较Anko布局和XML布局307
9.4DSL在Gradle构建脚本中的应用308
9.4.1将项目Nutrilicious迁移到GradleKotlinDSL308
9.4.2在Gradle中使用buildSrc313
9.4.3优点和缺点314
9.5本章小结315
0章迁移到Kotlin316
10.1软件中的移植316
10.2改变317
10.2.1获得认可318
10.2.2知识分享319
10.3部分或整体迁移320
10.3.1部分迁移320
10.3.2整体迁移321
10.4从何处开始322
10.4.1测试代码322
10.4.2生产代码323
10.4.3宠物程序323
10.4.4制定计划324
10.5工具支持325
10.5.1Java-to-Kotlin转换器325
10.5.2调整自动转换的代码326
10.6本章小结327
附录更多资源329
术语表332

内容简介

近年来,Kotlin已逐渐成为Android应用程序开发人员的优选语言。
本书通过大量的代码对Kotlin进行了深入浅出的讲解,并通过Android应用程序开发来指导读者进行实践,以帮助读者使用Kotlin编写出更健壮、更易维护的Android应用程序。
全书分两部分,共10章。
分(~6章)从细节入手讲解Kotlin的语言特性。章概述Kotlin,第2章介绍Kotlin的基本语言结构(如控制流、函数和异常),第3章展示Kotlin中如何使用函数式编程以及函数式编程的优点,第4章讲解Kotlin中如何处理面向对象,第5章讨论与Java的互操作性,第6章涵盖以协程为主要内容的并发性。
第二部分(第7~10章)通过完成Android应用来将分学到的知识加以实践。第7章和第8章分别介绍使用Kotlin开发一个待办事项应用Kudoo App和一个为使等
(德)彼得·佐默霍夫(Peter Sommerhoff) 著 陈洋,王亚鑫,康颢曦 译
彼得·佐默霍夫(Peter Sommerhoff)是一名热爱教学的软件开发人员,他创建了codealong电台,为35000多名学生讲授软件开发和设计相关的课程。他拥有德国亚琛工业大学计算机科学硕士学位。