Java8函数式编程读后总结与感想
1. 基本信息
Java 8函数式编程 Java 8 Lambdas: Functional Programming for the Masses
[英] Richard Warburton 著 ; 王群锋 译
人民邮电出版社,2015年3月出版
1.1. 读薄率
书籍总字数191千字,笔记总字数8153字。
读薄率8153÷191000≈4.27%
1.2. 读厚方向
-
Java实战(第二版)
-
Java技术手册(原书第7版)
-
Learning Java Functional Programming
-
Functional C#
-
Functional Programming in C#
1.3. 笔记–章节对应关系
笔记 | 章节 | 字数 |
读Java8函数式编程笔记01_Lambda表达式 | 第1章 简介 第2章 Lambda表达式 |
869 |
读Java8函数式编程笔记02_流 | 第3章 流 | 944 |
读Java8函数式编程笔记03_高级集合类和收集器 | 第5章 高级集合类和收集器 | 787 |
读Java8函数式编程笔记04_类库 | 第4章 类库 | 1214 |
读Java8函数式编程笔记05_数据并行化 | 第6章 数据并行化 | 1227 |
读Java8函数式编程笔记06_Lambda表达式编写并发程序 | 第9章 使用Lambda表达式编写并发程序 | 881 |
读Java8函数式编程笔记07_设计和架构的原则 | 第8章 设计和架构的原则 | 1348 |
读Java8函数式编程笔记08_测试、调试和重构 | 第7章 测试、调试和重构 第10章 下一步该怎么办 |
883 |
总计 | 8153 |
2. 亮点
2.1. 设计模式的生老病死
设计模式不是一成不变的,随着T技术的飞速发展,它也会生老病死,会过时,需要革新,推陈出新。
2.2. Java8函数式编程没提供什么
-
没有单子
-
没有语言层面的惰性求值
-
没有为不可变性提供额外支持
2.3 可有可无的注释其实很重要
@FunctionalInterface 重构代码时,使用它能很容易发现问题
2.4 数据并行化需具体分析相关性能
影响并行化性能的因素有很多,并行化很可能没有串行快,这需要具体场景具体测试。
3. 感想
3.1. 似曾相似和亮点渐少
同一主题的书籍看多了后,似曾相似感渐强,随之而来的就是亮点渐少。
3.2 可有可无的往往堪大用
前文提到的注释就是这样的,不加,也没有多大问题;这就像电动自行车头盔一样,正常情况下,不戴也能正常骑行(当然咯,被警察叔叔抓到就要罚款咯),但是,真正出事故了的时候,是能保命的。同理,重构代码时,那个注释能快速定位,减少排错时间。
建议:可有可无,选有。
3.3. 经典书籍,推荐阅读
Java8作为java系列的里程碑版本,专门针对Java 8 的这本书是推荐阅读的。