KOTLIN核心编程(水滴技术团队出品.深入阐述KOTLIN设计哲学.语言特性.设计模式.
![](/uploads/7454ab163e828eb7.jpg)
KOTLIN核心编程(水滴技术团队出品.深入阐述KOTLIN设计哲学.语言特性.设计模式.
更新日期:2024-07-13 00:59:56
出版时间:2019-04
浏览量:价格:0.0¥
书籍下载
内容介绍
作 者:水滴技术团队 著
定 价:89
出 版 社:机械工业出版社
出版日期:2019年04月01日
页 数:360
装 帧:平装
ISBN:9787111624318
(1)本书作者团队强大:水滴技术团队出品,团队核心成员均来自阿里、,其中不乏章建良(网名:Jilen)等技术大牛。(2)书中干货多,且具备一定深度:本书不是一般泛泛讲语法的书,而是一般围绕Kotlin设计理念对所有核心内容进行详细剖析的书,有一点Java基础,想高层次入门Kotlin的读者,本所不容错过。
●前言热身篇 Kotlin基础章 认识Kotlin21.1 Java的发展21.1.1 Java 8的探索31.1.2 Java未来的样子31.2 Scala的百宝箱31.2.1 学术和工业的平衡41.2.2 复合但不复杂41.2.3 简单却不容易51.3 Kotlin—改良的Java51.3.1 Kotlin的实用主义61.3.2 更好的Java61.3.3 强大的生态81.4 本章小结8第2章 基础语法102.1 不一样的类型声明102.1.1 增强的类型推导112.1.2 声明函数返回值类型112.2 val和var的使用规则132.2.1 val的含义:引用不可变132.2.2 优先使用val来避免副作用142.2.3 var的适用场景152.3 高阶函数和Lambda162.3.1 抽象和高阶函数172.3.2 实例:函数作为参数的需求172.3.3 函数的类型192.3.4 方法和成员引用212.3.5 匿名函数222.3.6 Lambda是语法糖222.3.7 函数、Lambda和闭包252.3.8 “柯里化”风格、扩展函数262.4 面向表达式编程292.4.1 表达式比语句更安全302.4.2 Unit类型:让函数调用皆为表达式322.4.3 复合表达式:更好的表达力332.4.4 枚举类和when表达式342.4.5 for循环和范围表达式372.4.6 中缀表达式392.5 字符串的定义和操作412.5.1 定义原生字符串412.5.2 字符串模板422.5.3 字符串判等432.6 本章小结43下水篇 Kotlin核心第3章 面向对象463.1 类和构造方法463.1.1 Kotlin中的类及接口463.1.2 更简洁地构造类的对象493.1.3 主从构造方法553.2 不同的访问控制原则563.2.1 修饰符573.2.2 可见性修饰符613.3 解决多继承问题3.3.1 骡子的多继承困惑3.3.2 接口实现多继承653.3.3 内部类解决多继承问题的方案673.3.4 使用委托代替多继承693.4 真正的数据类713.4.1 烦琐的JavaBean 713.4.2 用data class创建数据类 733.4.3 copy、componentN与解构753.4.4 数据类的约定与使用783.5 从static到object793.5.1 什么是伴生对象793.5.2 天生的单例:object813.5.3 object表达式823.6 本章小结84第4章 代数数据类型和模式匹配854.1 代数数据类型854.1.1 从代数到类型8.1.2 计数874.1.3 积类型874.1.4 和类型与密封类884.1.5 构造代数数据类型894.2 模式匹配904.2.1 何为模式914.2.2 常见的模式924.2.3 处理嵌套表达式934.2.4 通过Scala找点灵感954.2.5 用when力挽狂澜974.3 增强 Kotlin 的模式匹配994.3.1 类型测试/类型转换994.3.2 面向对象的分解1004.3.3 访问者设计模式1024.3.4 总结1044.4 用代数数据类型来抽象业务1054.4.1 从一个实际需求入手1054.4.2 糟糕的设计1054.4.3 利用ADT10.4.4 更高层次的抽象1084.5 本章总结110第5章 类型系统1125.1 null引用:10亿美元的错误1125.1.1 null做了哪些恶1125.1.2 如何解决NPE问题1145.2 可空类型1155.2.1 Java 8中的Optional1155.2.2 Kotlin的可空类型1185.2.3 类型检查1215.2.4 类型智能转换1225.3 比Java更面向对象的设计1245.3.1 Any:非空类型的根类型1245.3.2 Any?:所有类型的根类型1275.3.3 Nothing与Nothing?1285.3.4 自动装箱与拆箱1285.3.5 “新”的数组类型1295.4 泛型:让类型更加安全1305.4.1 泛型:类型安全的利刃1305.4.2 如何在Kotlin中使用泛型1315.4.3 类型约束:设定类型上界1335.5 泛型的背后:类型擦除1355.5.1 Java为什么无法声明一个泛型数组1355.5.2 向后兼容的罪1365.5.3 类型擦除的矛盾1385.5.4 使用内联函数获取泛型1395.6 打破泛型不变1405.6.1 为什么List不能赋值给List