互联网
类型
可以朗读
语音朗读
356千字
字数
2021-06-01
发行日期
展开全部
主编推荐语
Jolt Productivity获奖作者编写,助你开启通往Kotlin世界的大门。
内容简介
Kotlin是一种多范式编程语言。你可以用Kotlin编写简单的脚本、面向对象的代码、函数式代码,以及异步编程等。
为了合理地涵盖这一广泛的主题,本书分为多个部分。第一部分主要介绍使用Kotlin编写脚本。第二部分是关于面向对象编程的。在第三部分中,你将学习如何使用该语言的函数式风格的功能。第四部分将把目前为止所学的知识结合起来,使代码更加流畅,并教会你如何创建内部领域特定语言(DSL)。在第五部分中,你将了解协程和异步编程。最后,第六部分涉及Java的互操作、测试、在Spring中使用Kotlin,以及使用Kotlin编写Android应用程序。
目录
- 版权信息
- 本书赞誉
- 序
- 前言
- 致谢
- 第1章 你好Kotlin
- 1.1 爱上Kotlin的理由
- 1.2 为什么选择Kotlin
- 1.3 带Kotlin去兜兜风
- 1.4 编译成字节码并运行
- 1.5 编译成其他目标
- 1.6 选择哪个选项
- 1.7 本章小结
- 第一部分 使用Kotlin编写脚本
- 第2章 从Java角度了解Kotlin的基本知识
- 2.1 减少输入
- 2.2 合理的警告
- 2.3 选择val而不是var
- 2.4 改进的相等性检查
- 2.5 字符串模板
- 2.6 原始字符串
- 2.7 更多的表达式,更少的语句
- 2.8 本章小结
- 第3章 使用函数
- 3.1 创建函数
- 3.2 默认参数和命名参数
- 3.3 vararg和spread
- 3.4 解构
- 3.5 本章小结
- 第4章 外部迭代和参数匹配
- 4.1 范围与迭代
- 4.2 遍历数组和列表
- 4.3 何时应该使用when
- 4.4 本章小结
- 第5章 使用集合
- 5.1 集合的类型
- 5.2 使用Pair和Triple
- 5.3 对象和基元数组
- 5.4 使用列表
- 5.5 使用集合
- 5.6 使用映射
- 5.7 本章小结
- 第6章 使用类型安全性解决问题
- 6.1 Any和Nothing类
- 6.2 可空的引用
- 6.3 类型检查和转换
- 6.4 显式类型转换
- 6.5 泛型:参数类型的变化和约束
- 6.6 具体化的类型参数
- 6.7 本章小结
- 第二部分 面向对象的Kotlin
- 第7章 对象和类
- 7.1 对象和单例
- 7.2 创建类
- 7.3 伴生对象和类成员
- 7.4 创建泛型类
- 7.5 数据类
- 7.6 本章小结
- 第8章 类层次结构和继承
- 8.1 创建接口和抽象类
- 8.2 嵌套类和内部类
- 8.3 继承
- 8.4 Sealed类
- 8.5 创建和使用枚举
- 8.6 本章小结
- 第9章 通过委托进行扩展
- 9.1 何时选择委托而不是继承
- 9.2 使用委托进行设计
- 9.3 委托给一个参数
- 9.4 处理方法冲突
- 9.5 Kotlin委托的注意事项
- 9.6 委托变量和属性
- 9.7 内置的标准委托
- 9.8 本章小结
- 第三部分 函数式Kotlin
- 第10章 使用lambda进行函数式编程
- 10.1 函数式风格
- 10.2 lambda表达式
- 10.3 lambda和匿名函数
- 10.4 闭包和词法作用域
- 10.5 非局部和带标签的return
- 10.6 带有lambda的内联函数
- 10.7 本章小结
- 第11章 内部迭代和延迟计算
- 11.1 外部迭代器与内部迭代器
- 11.2 内部迭代器
- 11.3 延迟计算序列
- 11.4 本章小结
- 第四部分 优雅且高效的Kotlin
- 第12章 Kotlin的流畅性
- 12.1 重载运算符
- 12.2 使用扩展函数和属性进行注入
- 12.3 扩展函数
- 12.4 带中缀的函数流畅性
- 12.5 带Any对象的流畅性
- 12.6 隐式接收方
- 12.7 本章小结
- 第13章 创建内部DSL
- 13.1 DSL的类型和特征
- 13.2 用于内部DSL的Kotlin
- 13.3 构建流畅性方面的挑战
- 13.4 类型安全构建器
- 13.5 使用作用域控制来缩小访问范围
- 13.6 本章小结
- 第14章 编写递归和记忆
- 14.1 递归的威力和危险
- 14.2 尾调用优化
- 14.3 记忆
- 14.4 将记忆应用于动态规划
- 14.5 本章小结
- 第五部分 编写异步应用程序
- 第15章 探索协程
- 15.1 协程和并发
- 15.2 使用协程并发运行
- 15.3 协程上下文和线程
- 15.4 调试协程
- 15.5 创建无限序列
- 15.6 本章小结
- 第16章 异步编程
- 16.1 非阻塞异步编程
- 16.2 异常处理
- 16.3 取消和超时
- 16.4 本章小结
- 第六部分 互操作和测试
- 第17章 将Java与Kotlin混合使用
- 17.1 联合编译
- 17.2 从Kotlin调用Java
- 17.3 从Java调用Kotlin
- 17.4 本章小结
- 第18章 使用Kotlin进行单元测试
- 18.1 被测试的代码
- 18.2 获取项目文件
- 18.3 从Canary测试开始
- 18.4 编写经验测试
- 18.5 编写数据驱动的测试
- 18.6 模拟依赖项
- 18.7 测试顶级函数
- 18.8 测试协程和异步调用
- 18.9 与服务集成
- 18.10 查看代码覆盖率
- 18.11 将应用程序用于驱动
- 18.12 本章小结
- 第19章 使用Kotlin编写Spring应用程序
- 19.1 创建一个Starter项目
- 19.2 创建一个控制器
- 19.3 创建一个实体类
- 19.4 创建一个存储库接口
- 19.5 创建一个服务
- 19.6 将服务与控制器集成
- 19.7 继续实践
- 19.8 本章小结
- 第20章 使用Kotlin编写Android应用程序
- 20.1 创建一个项目
- 20.2 定义域对象
- 20.3 创建布局
- 20.4 实施活动
- 20.5 更新RecyclerView
- 20.6 查看应用程序的运行情况
- 20.7 本章小结
- 附录1 转换为JavaScript
- 附录2 Kotlin/Native
- 附录3 Kotlin到WebAssembly
- 参考文献
展开全部
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。