Kotlin进阶实战

Kotlin进阶实战

作者:沈哲易庞宙

出版社:清华大学

出版年:2021年10月

ISBN:9787302591207

所属分类:艺术理论

书刊介绍

《Kotlin进阶实战》内容简介

本书详细介绍了Kotlin语言方方面面的特性,包括各种类型的函数,贯彻本书始终的Lambda表达式,有别于Java的委托、泛型,灵活、简洁的DSL,常用的语法糖,相比线程更加轻量级的协程,参考RxJava实现的Flow,等等。本书还提供了大量涉及移动端、服务端甚至桌面端的案例,这些案例都是编者使用Kotlin之后的实践和心得,同时包含很多编者封装的library,供读者参考、借鉴和使用。本书适合有一定Kotlin语法基础的读者使用,尤其适合移动端和服务端的开发人员使用,也可以用作大专院校和培训机构的教学参考 沈哲,现就职于万物新生(爱回收),担任创新中心技术总监,负责AIoT产品相关的研发工作。具有多年的服务端、移动端研发经验,熟悉函数响应式编程,对计算机视觉有一定的研究。曾负责过一款移动端深度链接的产品,日活数千万,该产品已于2019年初以千万级别的交易额卖给极光,后更名为极光魔链。出版著作《RxJava2.x实战》。
易庞宙,Android开源爱好者,RxTask库、全面屏适配库以及一些Android常用开源工具的开发者,CSDN博主。负责过搜床科技集团Android开发,例如xbed、酒店自助入住App开发等,目前就职于广州极飞科技股份有限公司,担任高级Android开发工程师。

作品目录

前言
第1章:认识Kotlin
1.1、Kotlin简介
1.2、Kotlin的发展
1.3、总结
第2章:Kotlin的函数与类
2.1、函数的基本概念
2.2、Kotlin的类(一)
2.3、Kotlin的类(二)
2.4、总结
第3章:Kotlin的函数式编程
3.1、函数式编程与高阶函数
3.2、Lambda表达式
3.3、集合、序列和Java中的流
3.4、总结
第4章:内联函数与扩展函数
4.1、内联函数
4.2、内联属性
4.3、扩展函数
4.4、扩展属性
4.5、总结
第5章:委托
5.1、委托介绍
5.2、Kotlin的委托模式和委托属性
5.3、lateinit和by
lazy
5.4、总结
第6章:泛型
6.1、类型擦除
6.2、型变
6.3、泛型约束、类型投影与星号投影
6.4、总结
第7章:元编程
7.1、元编程
7.2、Kotlin反射概述
7.3、Java反射和Kotlin反射(上)
7.4、Java反射和Kotlin反射(下)
7.5、总结
第8章:DSL的构建
8.1、DSL介绍
8.2、构建一个DSL的多种方式
8.3、总结
第9章:常用语法糖与设计模式
9.1、运算符重载
9.2、中缀表达式
9.3、作用域函数
9.4、Contract契约
9.5、在data
class中使用MapStruct
9.6、更好地使用设计模式
9.7、总结
第10章:跨平台开发
10.1、跨平台的简单介绍
10.2、利用Ktor-Client实现跨平台网络请求
10.3、总结
第11章:协程及其应用
11.1、协程的基本概念
11.2、Coroutine
builders
11.3、挂起函数
11.4、协程的上下文和调度
11.5、协程的作用域CoroutineScope
11.6、Channel机制
11.7、总结
第12章:Flow的基本使用
12.1、Flow的使用
12.2、Flow和RxJava
12.3、Flow的异常处理
12.4、Flow的线程操作
12.5、Flow其他的操作符
12.6、总结
第13章:RxJava的新特性及常用操作符
13.1、RxJava入门
13.2、RxJava
3新特性描述
13.3、常用操作符讲解
13.4、总结
第14章:RxJava的核心机制
14.1、ObservableSource、Observable、Observer的同流合污
14.2、恐怖的Function机制
14.3、线程的决策者Scheduler
14.4、Observeable五兄弟的差异性
14.5、背压策略
14.6、总结
第15章:Jetpack
15.1、Jetpack介绍
15.2、Lifecycle
15.3、ViewModel
15.4、LiveData
15.5、Room的用法
15.6、Navigation用法详解
15.7、总结
第16章:Android实战
16.1、构建一个日志框架
16.2、网络诊断工具
16.3、使用Netty构建一个在Android上运行的Web服务器
16.4、实现协程版本的EventBus
16.5、总结
第17章:响应式开发实战
17.1、封装一个基于RxJava的任务框架RxTask
17.2、基于Kotlin、RxJava实现的有限状态机
17.3、Kotlin、RxJava以及传统的机器学习在手机质检上的应用
17.4、总结
第18章:服务端实战
18.1、使用Ktor快速开发Web项目
18.2、使用WebFlux
+
R2DBC开发Web项目
18.3、使用NetDiscovery开发网络爬虫
18.4、实现智能硬件的远程控制系统(上)
18.5、实现智能硬件的远程控制系统(下)
18.6、总结

相关推荐

微信二维码