Kotlin核心编程 - (EPUB全文下载)
文件大小:0.59 mb。
文件格式:epub 格式。
书籍内容:
Kotlin核心编程
第1章 认识Kotlin
1.1 Java的发展
1.1.1 Java 8的探索
1.1.2 Java未来的样子
1.2 Scala的百宝箱
1.2.1 学术和工业的平衡
1.2.2 复合但不复杂
1.2.3 简单却不容易
1.3 Kotlin——改良的Java
1.3.1 Kotlin的实用主义
1.3.2 更好的Java
1.3.3 强大的生态
1.4 本章小结
第2章 基础语法
2.1 不一样的类型声明
2.1.1 增强的类型推导
2.1.2 声明函数返回值类型
2.2 val和var的使用规则
2.2.1 val的含义:引用不可变
2.2.2 优先使用val来避免副作用
2.2.3 var的适用场景
2.3 高阶函数和Lambda
2.3.1 抽象和高阶函数
2.3.2 实例:函数作为参数的需求
2.3.3 函数的类型
2.3.4 方法和成员引用
2.3.5 匿名函数
2.3.6 Lambda是语法糖
2.3.7 函数、Lambda和闭包
2.3.8 “柯里化”风格、扩展函数
2.4 面向表达式编程
2.4.1 表达式比语句更安全
2.4.2 Unit类型:让函数调用皆为表达式
2.4.3 复合表达式:更好的表达力
2.4.4 枚举类和when表达式
2.4.5 for循环和范围表达式
2.4.6 中缀表达式
2.5 字符串的定义和操作
2.5.1 定义原生字符串
2.5.2 字符串模板
2.5.3 字符串判等
2.6 本章小结
下水篇 Kotlin核心
第3章 面向对象
3.1 类和构造方法
3.1.1 Kotlin中的类及接口
3.1.2 更简洁地构造类的对象
3.1.3 主从构造方法
3.2 不同的访问控制原则
3.2.1 限制修饰符
3.2.2 可见性修饰符
3.3 解决多继承问题
3.3.1 骡子的多继承困惑
3.3.2 接口实现多继承
3.3.3 内部类解决多继承问题的方案
3.3.4 使用委托代替多继承
3.4 真正的数据类
3.4.1 烦琐的JavaBean
3.4.2 用data class创建数据类
3.4.3 copy、componentN与解构
3.4.4 数据类的约定与使用
3.5 从static到object
3.5.1 什么是伴生对象
3.5.2 天生的单例:object
3.5.3 object表达式
3.6 本章小结
第4章 代数数据类型和模式匹配
4.1 代数数据类型
4.1.1 从代数到类型
4.1.2 计数
4.1.3 积类型
4.1.4 和类型与密封类
4.1.5 构造代数数据类型
4.2 模式匹配
4.2.1 何为模式
4.2.2 常见的模式
4.2.3 处理嵌套表达式
4.2.4 通过Scala找点灵感
4.2.5 用when力挽狂澜
4.3 增强Kotlin的模式匹配
4.3.1 类型测试/类型转换
4.3.2 面向对象的分解
4.3.3 访问者设计模式
4.3.4 总结
4.4 用代数数据类型来抽象业务
4.4.1 从一个实际需求入手
4.4.2 糟糕的设计
4.4.3 利用ADT
4.4.4 更高层次的抽象
4.5 本章总结
第5章 类型系统
5.1 null引用:10亿美元的错误
5.1.1 null做了哪些恶
5.1.2 如何解决NPE问题
5.2 可空类型
5.2.1 Java 8中的Optional
5.2.2 Kotlin的可空类型
5.2.3 类型检查
5.2.4 类型智能转换
5.3 比Java更面向对象的设计
5.3.1 Any:非空类型的根类型
5.3.2 Any?:所有类型的根类型
5.3.3 Nothing与Nothing?
5.3.4 自动装箱与拆箱
5.3.5 “新”的数组类型
5.4 泛型:让类型更加安全
5.4.1 泛型:类型安全的利刃
5.4.2 如何在Kotlin中使用泛型
5.4.3 类型约束:设定类型上界
5.5 泛型的背后:类型擦除
5.5.1 Java为什么无法声明一个泛型数组
5.5.2 向后兼容的罪
5.5.3 类型擦除的矛盾
5.5.4 使用内联函数获取泛型
5.6 打破泛型不变
5.6.1 为什么List<String>不能赋值给List<Object>
5.6.2 一个支持协变的List
5.6.3 一个支持逆变的Comparator
5.6.4 协变和逆变
5.7 本章小结
第6章 Lambda和集合
6.1 Lambda简化表达
6.1.1 调用Java的函数式接口
6.1.2 带接收者的Lambda
6.1.3 with和apply
6.2 集合的高阶函数API
6.2.1 以简驭繁:map
6.2.2 对集合进行筛选:filter、count
6.2.3 别样的求和方式:sumBy、sum、fold、reduce
6.2.4 根据学生性别进行分组:groupBy
6.2.5 扁平化——处理嵌套集合:flatMap、flatten
6.3 集合库的设计
6.3.1 集合的继承关系
6.3.2 可变集合与只读集合
6.4 惰性集合
6.4.1 通过序列提高效率
6.4.2 序列的操作方式
6.4.3 序列可以是无限的
6.4.4 序列与Java 8 Stream对比
6.5 内联函数
6.5.1 优化Lambda开销
6.5.2 内联函数具体语法
6.5.3 noinline:避免参数被内联
6.5.4 非局部返回
6.5.5 crossinline
6.5.6 具体化参数类型
6.6 本章小结
第7章 多态和扩展
7.1 多态的不同方式
7.1.1 子类型多态
7.1.2 参数多态
7.1.3 对第三方类进行扩展
7.1.4 特设多态与运算符重载
7.2 扩展:为别的类添加方法、属性
7.2.1 扩展与开放封闭原则
7.2.2 使用扩展函数、属性
7.2.3 扩展的特殊情况
7.2.4 标准库中的扩展函数:run、let、also、takeIf
............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » Kotlin核心编程 - (EPUB全文下载)