Kotlin入门与实战

Kotlin入门与实战
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2019-05
版次: 1
ISBN: 9787115498762
定价: 89.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 357页
正文语种: 简体中文
丛书: Kotlin
4人买过
  • 《Kotlin入门与实战》从Kotlin的发展史讲起,将理论知识和项目实例相结合,全面介绍Kotlin的基础与应用。通过阅读本书,读者可以迅速掌握Kotlin的基本操作,轻松应对使用Java开发所带来的技术难题。

    《Kotlin入门与实战》内容共分为18章,由Kotlin入门与基础、Kotlin语法和Kotlin项目实例3个部分组成。第一部分(第1~3章)主要介绍了Kotlin的发展、Kotlin开发环境搭建、JVM语系和Kotlin各版本的重要特性。第二部分(第4~16章)详细解析Kotlin的基础语法。第三部分(第17、18章)集中演示了基础知识的实战运用。

    《Kotlin入门与实战》适合前端开发人员、Android/iOS开发人员以及Java从业人员阅读。 向治洪,2012年开始从事客户端开发,有多年的客户端开发经验。同时,作为资深互联网基础应用建设专家、开源技术贡献者以及敏捷开发实践者,在软件行业,特别是前端领域有自己独到的见解。 第 一部分 Kotlin入门与基础

    第 1章 Kotlin简介 1

    1.1 Kotlin发展史 1

    1.2 面向对象编程概述 3

    1.2.1 面向过程编程 3

    1.2.2 面向对象编程 4

    1.3 Java虚拟机 5

    1.3.1 JVM语系生态 5

    1.3.2 Java虚拟机概述 7

    1.3.3 Kotlin应用程序运行过程 7

    1.4 为什么使用Kotlin 8

    1.5 Kotlin与Java的比较 11

    1.6 小结 12

    第 2章 Kotlin初体验 13

    2.1 Kotlin在线运行 13

    2.2 Kotlin 1.1特性 15

    2.2.1 JavaScript全面支持 15

    2.2.2 JVM新特性 16

    2.2.3 协程 17

    2.2.4 标准库 19

    2.3 Kotlin 1.2新特性 20

    2.3.1 多平台支持 21

    2.3.2 多平台环境搭建 21

    2.3.3 特定平台声明 24

    2.3.4 标准库支持 25

    2.3.5 JVM特性 27

    2.3.6 JavaScript特性支持 28

    2.4 小结 29

    第3章 Kotlin快速入门 30

    3.1 在Mac上搭建Kotlin开发环境 30

    3.1.1 安装与配置JDK环境 30

    3.1.2 安装与配置IDE 33

    3.2 Kotlin开发IDE介绍 36

    3.2.1 IntelliJ IDEA开发环境 36

    3.2.2 Android Studio集成开发环境 38

    3.3 Kotlin的编译与运行 42

    3.3.1 命令行方式编译运行Kotlin 42

    3.3.2 运行Kotlin REPL 44

    3.3.3 在浏览器中运行Kotlin 45

    3.3.4 在Node.js中运行Kotlin 47

    3.4 Kotlin构建方式 48

    3.4.1 使用Gradle方式构建Kotlin 48

    3.4.2 使用Maven方式构建Kotlin 50

    3.4.3 使用Ant方式构建Kotlin 51

    3.4.4 Kotlin与OSGi 52

    3.4.5 Kotlin与Kapt 53

    3.5 编译器插件 55

    3.5.1 全开放编译插件 55

    3.5.2 无参编译器插件 56

    3.6 小结 58

    第二部分 Kotlin语法

    第4章 Kotlin语法基础 59

    4.1 Kotlin编程风格 59

    4.2 变量与属性 61

    4.2.1 变量声明 61

    4.2.2 getter和setter 63

    4.2.3 访问权限 65

    4.3 基本数据类型 66

    4.3.1 数值类型 66

    4.3.2 字符类型 68

    4.3.3 布尔类型 69

    4.3.4 数组类型 69

    4.3.5 字符串 70

    4.4 包声明与使用 72

    4.5 流程控制语句 75

    4.5.1 if条件语句 75

    4.5.2 when语句 76

    4.5.3 for循环 78

    4.5.4 while循环 79

    4.5.5 返回与跳转 79

    4.6 Kotlin运算符 80

    4.6.1 赋值运算符 80

    4.6.2 算数运算符 81

    4.6.3 关系运算符 81

    4.6.4 逻辑运算符 82

    4.6.5 区间运算符 82

    4.6.6 运算符优先级 83

    4.7 运算符重载 84

    4.7.1 一元运算符 85

    4.7.2 二元运算符 86

    4.7.3 位运算符 88

    4.8 Kotlin操作符 88

    4.8.1 冒号操作符 88

    4.8.2 @操作符 89

    4.8.3 $操作符 90

    4.8.4 安全转换操作符 90

    4.8.5 类型判断操作符 90

    4.9 Kotlin动态类型 91

    4.10 Kotlin空安全 92

    4.10.1 可空类型与不可空类型 92

    4.10.2 判空操作符 93

    4.10.3 Elvis操作符 94

    4.10.4 强校验操作符 94

    4.10.5 安全的类型转换 95

    4.10.6 可空类型集合 95

    4.11 异常处理 95

    4.11.1 异常类 95

    4.11.2 自定义异常 96

    4.11.3 try表达式 97

    4.11.4 throw表达式 97

    4.11.5 受检异常 97

    4.12 小结 98

    第5章 类与接口 99

    5.1 类 99

    5.1.1 类的声明 99

    5.1.2 构造函数 101

    5.1.3 类的实例 102

    5.2 继承 103

    5.3 抽象类 106

    5.4 接口 108

    5.5 小结 110

    第6章 扩展函数与属性 111

    6.1 枚举 111

    6.1.1 基本用法 111

    6.1.2 枚举类扩展 112

    6.2 扩展 114

    6.2.1 扩展的动机 114

    6.2.2 扩展原生函数 114

    6.2.3 静态解析 115

    6.2.4 扩展属性 116

    6.2.5 扩展伴生对象 117

    6.2.6 扩展的作用域 117

    6.2.7 类中声明扩展 118

    6.3 this表达式 120

    6.4 小结 121

    第7章 数据类与密封类 122

    7.1 数据类 122

    7.1.1 对象复制 123

    7.1.2 序列化 124

    7.1.3 成员解构 125

    7.2 密封类 127

    7.3 小结 128

    第8章 集合与泛型 129

    8.1 集合 129

    8.1.1 集 129

    8.1.2 列表 130

    8.1.3 映射 132

    8.2 泛型 133

    8.2.1 泛型基础 133

    8.2.2 型变 134

    8.2.3 声明处型变 135

    8.2.4 类型投影 136

    8.2.5 星号投影 138

    8.2.6 泛型函数 138

    8.2.7 泛型约束 139

    8.3 小结 139

    第9章 对象与委托 140

    9.1 对象 140

    9.1.1 对象表达式 140

    9.1.2 对象声明 142

    9.1.3 伴生对象 143

    9.2 委托 144

    9.2.1 类委托 144

    9.2.2 委托属性 145

    9.3 标准委托 146

    9.3.1 延迟属性 146

    9.3.2 可观察属性 147

    9.3.3 Map委托 148

    9.3.4 Not Null 149

    9.3.5 局部委托属性 150

    9.3.6 提供委托 151

    9.4 小结 152

    第 10章 反射与注解 153

    10.1 反射 153

    10.1.1 类引用 154

    10.1.2 类成员引用 154

    10.1.3 函数引用 155

    10.1.4 属性引用 156

    10.1.5 构造函数引用 157

    10.1.6 KClass反射 158

    10.1.7 对象序列化 161

    10.2 注解 162

    10.2.1 注解声明 162

    10.2.2 注解使用 163

    10.2.3 注解类的构造函数 165

    10.2.4 注解使用场景目标 166

    10.2.5 与Java注解互调 167

    10.2.6 注解分类 168

    10.2.7 注解的生命周期 169

    10.3 小结 169

    第 11章 函数与Lambda表达式 170

    11.1 函数 170

    11.1.1 函数基本用法 170

    11.1.2 中缀表示法 171

    11.1.3 函数参数 171

    11.1.4 函数作用域 173

    11.1.5 函数返回值 174

    11.1.6 尾递归函数 175

    11.2 高阶函数 175

    11.2.1 高阶函数基本用法 175

    11.2.2 标准高阶函数 177

    11.3 内联函数 179

    11.3.1 内联Lambda表达式 179

    11.3.2 内联函数声明 180

    11.3.3 非局部返回 181

    11.3.4 实例化类型参数 182

    11.3.5 内联属性 183

    11.4 Lambda表达式与匿名函数 183

    11.4.1 Lambda表达式语法 184

    11.4.2 函数类型 185

    11.4.3 匿名函数 185

    11.4.4 闭包 186

    11.4.5 函数显式声明 186

    11.5 小结 187

    第 12章 协程 188

    12.1 协程简介 188

    12.1.1 协程与线程 188

    12.1.2 使用协程的好处 189

    12.2 协程开发环境 190

    12.2.1 Gradle构建方式 190

    12.2.2 Maven构建方式 191

    12.3 协程基础 192

    12.3.1 launch函数 192

    12.3.2 共享线程池 193

    12.3.3 阻塞与挂起 193

    12.3.4 runBlocking函数 194

    12.3.5 协程取消 195

    12.3.6 协程超时 195

    12.3.7 标准API 196

    12.4 挂起函数 197

    12.4.1 默认顺序执行 198

    12.4.2 异步并发执行 198

    12.4.3 异步样式函数 200

    12.5 协程上下文与调度器 201

    12.5.1 协程调度与线程 201

    12.5.2 非限制与限制协程 202

    12.5.3 协程与线程调试 203

    12.5.4 协程中的子协程 203

    12.6 通道 204

    12.6.1 通道基础 204

    12.6.2 通道的关闭与迭代 205

    12.6.3 通道生产者 206

    12.7 管道 206

    12.7.1 管道生产与消费 206

    12.7.2 管道与质数 207

    12.7.3 多接收者协程 208

    12.7.4 通道缓存 209

    12.8 小结 210

    第 13章 I/O操作与多线程 211

    13.1 Kotlin流层次 211

    13.1.1 字节输入流 212

    13.1.2 字节输出流 213

    13.1.3 字符输入流 214

    13.1.4 字符输出流 215

    13.1.5 字符流与字节流转换 216

    13.2 文件I/O操作 216

    13.2.1 文件读取 217

    13.2.2 文件写入 217

    13.2.3 文件遍历 218

    13.3 网络I/O操作 219

    13.4 多线程 219

    13.4.1 线程创建 220

    13.4.2 线程同步 220

    13.5 小结 221

    第 14章 Kotlin DSL 222

    14.1 DSL简介 222

    14.1.1 DSL的设计与实现 222

    14.1.2 DSL分类 223

    14.2 DSL语义模型 223

    14.2.1 依赖网络 224

    14.2.2 产生式规则系统 224

    14.2.3 状态机 224

    14.3 Kotlin的DSL特性 225

    14.4 使用kotlinx.html创建DSL 226

    14.4.1 Maven构建方式 227

    14.4.2 Gradle构建方式 228

    14.4.3 kotlinx.html实例 229

    14.5 Android Gradle指南 233

    14.5.1 链式命令 233

    14.5.2 委托 234

    14.6 使用Kotlin与Anko进行Android开发 235

    14.6.1 Anko简介 235

    14.6.2 Anko核心组件与工具 236

    14.6.3 Anko使用实例 238

    14.7 小结 242

    第 15章 Kotlin互操作 243

    15.1 Kotlin与Java互操作 243

    15.1.1 在Kotlin中调用Java 243

    15.1.2 在Java中调用Kotlin 251

    15.1.3 JSR-305支持 257

    15.2 Kotlin与JavaScript互操作 261

    15.2.1 在Kotlin中调用JavaScript 261

    15.2.2 在JavaScript中调用Kotlin 264

    15.2.3 JavaScript模块 266

    15.2.4 JavaScript反射 269

    15.2.5 JavaScript DCE 270

    15.3 小结 271

    第 16章 Kotlin Native开发 272

    16.1 Kotlin Native 272

    16.1.1 Kotlin Native简介 272

    16.1.2 Kotlin Native编译器 273

    16.1.3 编译器konan 274

    16.2 Kotlin Native实例 275

    16.2.1 构建Kotlin Native项目 275

    16.2.2 添加konan插件配置 276

    16.2.3 编写源代码 277

    16.2.4 添加konanInterop与konanArtifacts配置 278

    16.2.5 编译与执行 279

    16.2.6 用命令行方式编译Kotlin Native 280

    16.3 使用Kotlin Native开发iOS应用 281

    16.3.1 创建Kotlin Native项目 281

    16.3.2 Kotlin Native测试 284

    16.4 小结 286

    第三部分 Kotlin项目实例

    第 17章 使用Kotlin与Spring Boot开发服务端 287

    17.1 Spring Boot环境搭建 287

    17.1.1 Spring Boot简介 287

    17.1.2 创建Spring Boot应用程序 288

    17.1.3 启动Spring Boot应用程序 292

    17.1.4 应用测试 293

    17.1.5 properties配置文件 296

    17.2 Spring Boot之Thymeleaf模板 298

    17.3 使用Swagger构建RESTful API 301

    17.4 Spring Boot通过MyBatis整合MySQL数据库 304

    17.5 Spring Boot整合Redis数据库 308

    17.5.1 Redis简介 308

    17.5.2 Spring Boot整合Redis 310

    17.6 Spring Boot整合Elasticsearch 313

    17.6.1 Elasticsearch简介 313

    17.6.2 Spring Boot整合Elasticsearch 315

    17.7 Spring Boot集成RabbitMQ 319

    17.7.1 RabbitMQ简介 319

    17.7.2 Spring Boot集成RabbitMQ 321

    17.8 Spring Boot热部署与日志管理 323

    17.9 Spring Framework 5.0对Kotlin的支持 326

    17.9.1 函数式Bean注册方式 326

    17.9.2 使用Kotlin调用Spring Web的功能性API 326

    17.9.3 RestTemplate与函数式API扩展 327

    17.9.4 Reactor的Kotlin扩展 327

    17.9.5 基于模板的Kotlin脚本 327

    17.10 小结 328

    第 18章 使用Kotlin开发Android视频应用 329

    18.1 项目概述 329

    18.2 浅谈Android开发架构模式 329

    18.2.1 MVC 331

    18.2.2 MVP 331

    18.2.3 MVVM 332

    18.3 项目准备 333

    18.3.1 新建Android项目 333

    18.3.2 添加项目库依赖 334

    18.3.3 编写主页面 335

    18.3.4 Android 6.0权限适配 338

    18.3.5 GSYVideoPlayer播放器简介 340

    18.4 项目开发 341

    18.4.1 基础类封装 341

    18.4.2 Retrofit封装 344

    18.4.3 自定义状态控制控件 345

    18.4.4 首页模块开发 348

    18.4.5 视频详情页面开发 352

    18.4.6 搜索功能的实现 355

    18.5 小结 357
  • 内容简介:
    《Kotlin入门与实战》从Kotlin的发展史讲起,将理论知识和项目实例相结合,全面介绍Kotlin的基础与应用。通过阅读本书,读者可以迅速掌握Kotlin的基本操作,轻松应对使用Java开发所带来的技术难题。

    《Kotlin入门与实战》内容共分为18章,由Kotlin入门与基础、Kotlin语法和Kotlin项目实例3个部分组成。第一部分(第1~3章)主要介绍了Kotlin的发展、Kotlin开发环境搭建、JVM语系和Kotlin各版本的重要特性。第二部分(第4~16章)详细解析Kotlin的基础语法。第三部分(第17、18章)集中演示了基础知识的实战运用。

    《Kotlin入门与实战》适合前端开发人员、Android/iOS开发人员以及Java从业人员阅读。
  • 作者简介:
    向治洪,2012年开始从事客户端开发,有多年的客户端开发经验。同时,作为资深互联网基础应用建设专家、开源技术贡献者以及敏捷开发实践者,在软件行业,特别是前端领域有自己独到的见解。
  • 目录:
    第 一部分 Kotlin入门与基础

    第 1章 Kotlin简介 1

    1.1 Kotlin发展史 1

    1.2 面向对象编程概述 3

    1.2.1 面向过程编程 3

    1.2.2 面向对象编程 4

    1.3 Java虚拟机 5

    1.3.1 JVM语系生态 5

    1.3.2 Java虚拟机概述 7

    1.3.3 Kotlin应用程序运行过程 7

    1.4 为什么使用Kotlin 8

    1.5 Kotlin与Java的比较 11

    1.6 小结 12

    第 2章 Kotlin初体验 13

    2.1 Kotlin在线运行 13

    2.2 Kotlin 1.1特性 15

    2.2.1 JavaScript全面支持 15

    2.2.2 JVM新特性 16

    2.2.3 协程 17

    2.2.4 标准库 19

    2.3 Kotlin 1.2新特性 20

    2.3.1 多平台支持 21

    2.3.2 多平台环境搭建 21

    2.3.3 特定平台声明 24

    2.3.4 标准库支持 25

    2.3.5 JVM特性 27

    2.3.6 JavaScript特性支持 28

    2.4 小结 29

    第3章 Kotlin快速入门 30

    3.1 在Mac上搭建Kotlin开发环境 30

    3.1.1 安装与配置JDK环境 30

    3.1.2 安装与配置IDE 33

    3.2 Kotlin开发IDE介绍 36

    3.2.1 IntelliJ IDEA开发环境 36

    3.2.2 Android Studio集成开发环境 38

    3.3 Kotlin的编译与运行 42

    3.3.1 命令行方式编译运行Kotlin 42

    3.3.2 运行Kotlin REPL 44

    3.3.3 在浏览器中运行Kotlin 45

    3.3.4 在Node.js中运行Kotlin 47

    3.4 Kotlin构建方式 48

    3.4.1 使用Gradle方式构建Kotlin 48

    3.4.2 使用Maven方式构建Kotlin 50

    3.4.3 使用Ant方式构建Kotlin 51

    3.4.4 Kotlin与OSGi 52

    3.4.5 Kotlin与Kapt 53

    3.5 编译器插件 55

    3.5.1 全开放编译插件 55

    3.5.2 无参编译器插件 56

    3.6 小结 58

    第二部分 Kotlin语法

    第4章 Kotlin语法基础 59

    4.1 Kotlin编程风格 59

    4.2 变量与属性 61

    4.2.1 变量声明 61

    4.2.2 getter和setter 63

    4.2.3 访问权限 65

    4.3 基本数据类型 66

    4.3.1 数值类型 66

    4.3.2 字符类型 68

    4.3.3 布尔类型 69

    4.3.4 数组类型 69

    4.3.5 字符串 70

    4.4 包声明与使用 72

    4.5 流程控制语句 75

    4.5.1 if条件语句 75

    4.5.2 when语句 76

    4.5.3 for循环 78

    4.5.4 while循环 79

    4.5.5 返回与跳转 79

    4.6 Kotlin运算符 80

    4.6.1 赋值运算符 80

    4.6.2 算数运算符 81

    4.6.3 关系运算符 81

    4.6.4 逻辑运算符 82

    4.6.5 区间运算符 82

    4.6.6 运算符优先级 83

    4.7 运算符重载 84

    4.7.1 一元运算符 85

    4.7.2 二元运算符 86

    4.7.3 位运算符 88

    4.8 Kotlin操作符 88

    4.8.1 冒号操作符 88

    4.8.2 @操作符 89

    4.8.3 $操作符 90

    4.8.4 安全转换操作符 90

    4.8.5 类型判断操作符 90

    4.9 Kotlin动态类型 91

    4.10 Kotlin空安全 92

    4.10.1 可空类型与不可空类型 92

    4.10.2 判空操作符 93

    4.10.3 Elvis操作符 94

    4.10.4 强校验操作符 94

    4.10.5 安全的类型转换 95

    4.10.6 可空类型集合 95

    4.11 异常处理 95

    4.11.1 异常类 95

    4.11.2 自定义异常 96

    4.11.3 try表达式 97

    4.11.4 throw表达式 97

    4.11.5 受检异常 97

    4.12 小结 98

    第5章 类与接口 99

    5.1 类 99

    5.1.1 类的声明 99

    5.1.2 构造函数 101

    5.1.3 类的实例 102

    5.2 继承 103

    5.3 抽象类 106

    5.4 接口 108

    5.5 小结 110

    第6章 扩展函数与属性 111

    6.1 枚举 111

    6.1.1 基本用法 111

    6.1.2 枚举类扩展 112

    6.2 扩展 114

    6.2.1 扩展的动机 114

    6.2.2 扩展原生函数 114

    6.2.3 静态解析 115

    6.2.4 扩展属性 116

    6.2.5 扩展伴生对象 117

    6.2.6 扩展的作用域 117

    6.2.7 类中声明扩展 118

    6.3 this表达式 120

    6.4 小结 121

    第7章 数据类与密封类 122

    7.1 数据类 122

    7.1.1 对象复制 123

    7.1.2 序列化 124

    7.1.3 成员解构 125

    7.2 密封类 127

    7.3 小结 128

    第8章 集合与泛型 129

    8.1 集合 129

    8.1.1 集 129

    8.1.2 列表 130

    8.1.3 映射 132

    8.2 泛型 133

    8.2.1 泛型基础 133

    8.2.2 型变 134

    8.2.3 声明处型变 135

    8.2.4 类型投影 136

    8.2.5 星号投影 138

    8.2.6 泛型函数 138

    8.2.7 泛型约束 139

    8.3 小结 139

    第9章 对象与委托 140

    9.1 对象 140

    9.1.1 对象表达式 140

    9.1.2 对象声明 142

    9.1.3 伴生对象 143

    9.2 委托 144

    9.2.1 类委托 144

    9.2.2 委托属性 145

    9.3 标准委托 146

    9.3.1 延迟属性 146

    9.3.2 可观察属性 147

    9.3.3 Map委托 148

    9.3.4 Not Null 149

    9.3.5 局部委托属性 150

    9.3.6 提供委托 151

    9.4 小结 152

    第 10章 反射与注解 153

    10.1 反射 153

    10.1.1 类引用 154

    10.1.2 类成员引用 154

    10.1.3 函数引用 155

    10.1.4 属性引用 156

    10.1.5 构造函数引用 157

    10.1.6 KClass反射 158

    10.1.7 对象序列化 161

    10.2 注解 162

    10.2.1 注解声明 162

    10.2.2 注解使用 163

    10.2.3 注解类的构造函数 165

    10.2.4 注解使用场景目标 166

    10.2.5 与Java注解互调 167

    10.2.6 注解分类 168

    10.2.7 注解的生命周期 169

    10.3 小结 169

    第 11章 函数与Lambda表达式 170

    11.1 函数 170

    11.1.1 函数基本用法 170

    11.1.2 中缀表示法 171

    11.1.3 函数参数 171

    11.1.4 函数作用域 173

    11.1.5 函数返回值 174

    11.1.6 尾递归函数 175

    11.2 高阶函数 175

    11.2.1 高阶函数基本用法 175

    11.2.2 标准高阶函数 177

    11.3 内联函数 179

    11.3.1 内联Lambda表达式 179

    11.3.2 内联函数声明 180

    11.3.3 非局部返回 181

    11.3.4 实例化类型参数 182

    11.3.5 内联属性 183

    11.4 Lambda表达式与匿名函数 183

    11.4.1 Lambda表达式语法 184

    11.4.2 函数类型 185

    11.4.3 匿名函数 185

    11.4.4 闭包 186

    11.4.5 函数显式声明 186

    11.5 小结 187

    第 12章 协程 188

    12.1 协程简介 188

    12.1.1 协程与线程 188

    12.1.2 使用协程的好处 189

    12.2 协程开发环境 190

    12.2.1 Gradle构建方式 190

    12.2.2 Maven构建方式 191

    12.3 协程基础 192

    12.3.1 launch函数 192

    12.3.2 共享线程池 193

    12.3.3 阻塞与挂起 193

    12.3.4 runBlocking函数 194

    12.3.5 协程取消 195

    12.3.6 协程超时 195

    12.3.7 标准API 196

    12.4 挂起函数 197

    12.4.1 默认顺序执行 198

    12.4.2 异步并发执行 198

    12.4.3 异步样式函数 200

    12.5 协程上下文与调度器 201

    12.5.1 协程调度与线程 201

    12.5.2 非限制与限制协程 202

    12.5.3 协程与线程调试 203

    12.5.4 协程中的子协程 203

    12.6 通道 204

    12.6.1 通道基础 204

    12.6.2 通道的关闭与迭代 205

    12.6.3 通道生产者 206

    12.7 管道 206

    12.7.1 管道生产与消费 206

    12.7.2 管道与质数 207

    12.7.3 多接收者协程 208

    12.7.4 通道缓存 209

    12.8 小结 210

    第 13章 I/O操作与多线程 211

    13.1 Kotlin流层次 211

    13.1.1 字节输入流 212

    13.1.2 字节输出流 213

    13.1.3 字符输入流 214

    13.1.4 字符输出流 215

    13.1.5 字符流与字节流转换 216

    13.2 文件I/O操作 216

    13.2.1 文件读取 217

    13.2.2 文件写入 217

    13.2.3 文件遍历 218

    13.3 网络I/O操作 219

    13.4 多线程 219

    13.4.1 线程创建 220

    13.4.2 线程同步 220

    13.5 小结 221

    第 14章 Kotlin DSL 222

    14.1 DSL简介 222

    14.1.1 DSL的设计与实现 222

    14.1.2 DSL分类 223

    14.2 DSL语义模型 223

    14.2.1 依赖网络 224

    14.2.2 产生式规则系统 224

    14.2.3 状态机 224

    14.3 Kotlin的DSL特性 225

    14.4 使用kotlinx.html创建DSL 226

    14.4.1 Maven构建方式 227

    14.4.2 Gradle构建方式 228

    14.4.3 kotlinx.html实例 229

    14.5 Android Gradle指南 233

    14.5.1 链式命令 233

    14.5.2 委托 234

    14.6 使用Kotlin与Anko进行Android开发 235

    14.6.1 Anko简介 235

    14.6.2 Anko核心组件与工具 236

    14.6.3 Anko使用实例 238

    14.7 小结 242

    第 15章 Kotlin互操作 243

    15.1 Kotlin与Java互操作 243

    15.1.1 在Kotlin中调用Java 243

    15.1.2 在Java中调用Kotlin 251

    15.1.3 JSR-305支持 257

    15.2 Kotlin与JavaScript互操作 261

    15.2.1 在Kotlin中调用JavaScript 261

    15.2.2 在JavaScript中调用Kotlin 264

    15.2.3 JavaScript模块 266

    15.2.4 JavaScript反射 269

    15.2.5 JavaScript DCE 270

    15.3 小结 271

    第 16章 Kotlin Native开发 272

    16.1 Kotlin Native 272

    16.1.1 Kotlin Native简介 272

    16.1.2 Kotlin Native编译器 273

    16.1.3 编译器konan 274

    16.2 Kotlin Native实例 275

    16.2.1 构建Kotlin Native项目 275

    16.2.2 添加konan插件配置 276

    16.2.3 编写源代码 277

    16.2.4 添加konanInterop与konanArtifacts配置 278

    16.2.5 编译与执行 279

    16.2.6 用命令行方式编译Kotlin Native 280

    16.3 使用Kotlin Native开发iOS应用 281

    16.3.1 创建Kotlin Native项目 281

    16.3.2 Kotlin Native测试 284

    16.4 小结 286

    第三部分 Kotlin项目实例

    第 17章 使用Kotlin与Spring Boot开发服务端 287

    17.1 Spring Boot环境搭建 287

    17.1.1 Spring Boot简介 287

    17.1.2 创建Spring Boot应用程序 288

    17.1.3 启动Spring Boot应用程序 292

    17.1.4 应用测试 293

    17.1.5 properties配置文件 296

    17.2 Spring Boot之Thymeleaf模板 298

    17.3 使用Swagger构建RESTful API 301

    17.4 Spring Boot通过MyBatis整合MySQL数据库 304

    17.5 Spring Boot整合Redis数据库 308

    17.5.1 Redis简介 308

    17.5.2 Spring Boot整合Redis 310

    17.6 Spring Boot整合Elasticsearch 313

    17.6.1 Elasticsearch简介 313

    17.6.2 Spring Boot整合Elasticsearch 315

    17.7 Spring Boot集成RabbitMQ 319

    17.7.1 RabbitMQ简介 319

    17.7.2 Spring Boot集成RabbitMQ 321

    17.8 Spring Boot热部署与日志管理 323

    17.9 Spring Framework 5.0对Kotlin的支持 326

    17.9.1 函数式Bean注册方式 326

    17.9.2 使用Kotlin调用Spring Web的功能性API 326

    17.9.3 RestTemplate与函数式API扩展 327

    17.9.4 Reactor的Kotlin扩展 327

    17.9.5 基于模板的Kotlin脚本 327

    17.10 小结 328

    第 18章 使用Kotlin开发Android视频应用 329

    18.1 项目概述 329

    18.2 浅谈Android开发架构模式 329

    18.2.1 MVC 331

    18.2.2 MVP 331

    18.2.3 MVVM 332

    18.3 项目准备 333

    18.3.1 新建Android项目 333

    18.3.2 添加项目库依赖 334

    18.3.3 编写主页面 335

    18.3.4 Android 6.0权限适配 338

    18.3.5 GSYVideoPlayer播放器简介 340

    18.4 项目开发 341

    18.4.1 基础类封装 341

    18.4.2 Retrofit封装 344

    18.4.3 自定义状态控制控件 345

    18.4.4 首页模块开发 348

    18.4.5 视频详情页面开发 352

    18.4.6 搜索功能的实现 355

    18.5 小结 357
查看详情
相关图书 / 更多
Kotlin入门与实战
Kokoro
Soseki;Natsume
Kotlin入门与实战
Kotlin进阶实战
沈哲、易庞宙 著
Kotlin入门与实战
Kotlin移动应用开发技术
白喆 著
Kotlin入门与实战
Kotlin编程实战:创建优雅 富于表现力和高性能的JVM与Android应用程序
[美]文卡特·苏布拉马尼亚姆(Venkat Subram
Kotlin入门与实战
Kong网关:入门、实战与进阶
孔庆雍 著
Kotlin入门与实战
Kotlin移动和服务器端应用开发
[美]布雷特·麦克劳克林(Brett McLaughlin)著 任强 译
Kotlin入门与实战
Kolmogorov型比较定理--函数逼近论(上)(精)/现代数学中的著名定理纵横谈丛书
孙永生 著
Kotlin入门与实战
Kodansha\'s Furigana Japanese Dictionary
Yoshida;Masatoshi;Nakamura;Yoshikatsu
Kotlin入门与实战
Komodo the Lizard King
Blade;Adam
Kotlin入门与实战
Kong入门与实战 基于Nginx和OpenResty的云原生微服务网关
闫观涛
Kotlin入门与实战
Kolmogorov型比较定理--函数逼近论(下)(精)/现代数学中的著名定理纵横谈丛书
孙永生、房艮孙 著
Kotlin入门与实战
Kotlin从小白到大牛(第2版)
关东升
您可能感兴趣 / 更多
Kotlin入门与实战
React Native移动开发实战 第3版
向治洪
Kotlin入门与实战
Flutter跨平台开发入门与实战
向治洪 著
Kotlin入门与实战
Flutter跨平台开发实战
向治洪
Kotlin入门与实战
React Native移动开发实战 第2版
向治洪
Kotlin入门与实战
WEEX跨平台开发实战
向治洪 著
Kotlin入门与实战
React Native移动开发实战
向治洪