ISBN: 978-7-115-38488-1
作者:【英】Richard Warburton
页数:132页
阅读时间:2023-08-05
推荐指数:★★★★★
练习项目:https://github.com/RichardWarburton/java-8-lambdas-exercises
虽然这本书出版于2014年,得有10年之久了,
但是基本原理还是不会变的。
约翰·麦卡锡在1958年发明了LISP通用高级计算机程序语言,
而且是为了人工智能而开发,是第一个声明式函数程序设计语言。
然后在2007年被加入C#3.0中,而Java引入比较晚:2014年3月18日发布的Java8(一个经典的JDK,直到现在还在使用)
整篇文章都在探讨如何写出简单、干净、易读的代码,
这也是我们程序员所追求的。
函数式编程:在思考问题时,使用不可变值和函数,函数对一个值进行处理,映射成另一个值。
书中首先介绍了Lambda表达式,并使用简单的形式(JavaSwing监听器例子)来展示什么是Java Lambda表达式,比较浅显易懂。
接着就介绍了核心类库改进点:流的使用。
流使程序员得以站在更高的抽象层上对集合进行操作。
在第四章介绍类库时,详细的介绍了基本类型使用、重载优化等内容。
后面又介绍了方法引用、收集器的使用。
当然也有并行化处理,可通过parallel或parallelStream并行化操作,
影响性能的五个要素:数据大小、源数据结构、值是否装箱、可用的CPU核数、处理每个元素所花费时间。
测试也必不可少,也有专门的一章进行讲解。
软件开发最重要的设计工具不是什么技术,而是一颗在设计原则方面训练有素的头脑
——Craig Larman
设计模式主要介绍了:命令者模式、策略模式、观察者模式、模版方法模式。还使用Lambda表达式进行SOLID原则开发。
并发程序这一章使用了Vert.x和RxJava框架,使用了非阻塞I/O,
还讨论了消息传递架构。
最后一章简洁的讨论了如何晋升自己,拓展新技能新技术。