AGS_top100 NianMo all bookbs boutique all 2017小家电厨具年末特惠-亚马逊 2017小家电厨具年末特惠-亚马逊 SAMSUNGS8 game 2017年3月轮胎特价低至249元 Kindle Family all watch jewelry1 jewelry2



于 2017年10月31日
这是第一本我买的关于一门语言新版本内容的介绍的书籍,在这之前,我对一门语言的升级总是抱有一个模糊(可能还不负责任)的态度,认为每次升级更新都不过是原有的小修小补,而且用新API还要考虑兼容的问题,所以用老版本的API应该灰更好,因此,我一直活在java5的世界。
我不知道java6、java7的更新是不是小修小补(接下来我也准备去看了),但是Java8的更新规模应该不能算“小”了。
说这本书“挺有意思”其实更多的是我主观上的意见,可能客观上来说就并非如此了,我之所以认为“挺有意思”,是因为本书将java8更新的内容都联系到了一起,这就像本来你期待着一部小说里只是一个一个独立的故事,但是无意中却发现了这一个个故事之间居然还有关联,对于读书的人来说,这应该也算是落差造成的一种小小的愉悦吧。
以下是我理解的,本书的述写的思路。
java8引入的第一重要的内容当然就是lambda了,使用lambda代替匿名类,减轻以往冗余复杂的匿名类代码,这就是第一个主线故事。
随即进入到第二个故事,Stream(流),表面上看,这是对以往的集合框架的一次大整改,把以往的命令式编程转换成声明式编程,也是同样起到了减轻代码量,让代码更好理解的作用,但实际上Stream中有大量用到了lambda,Stream之所以能使集合操作变得简单,除了提供了更多简单的API以外,lambda功不可没,所以第二个故事的背后其实有第一个故事的支撑。
然而,Stream提供了新的、简单的API背后其实蕴含了一个很大的问题,那就是要对如Collection这样的高级接口进行修改(因为要加方法),这样的话众多低层接口或实现类就会出现大面积的编译出错,因此就要引入默认方法来解决这个问题,这是第三个故事。可以看到,第二个故事并没有解决所有的主线剧情,所以才有了第三话来弥补第二话遗留下来的缺陷。
顺便一提,本人认为默认方法真的不是什么聪明的设计,它更有一种“我没有办法了,我只能这么改”的味道,有了默认方法,原本接口的概念更加接近于抽象类了。。
然而,Stream引发的问题光是一个默认方法还不能解决,因为Stream的API多为链式调用,因此还会引发一个问题,而这个问题也是长年以来一直是令java程序员头疼而且熟悉的空指针异常,NullPointException。如果链式调用的途中出现了null怎么办?以往的版本就是直接NullPointException了,但是现在java8可以继续调用下去,然后把结果塞到Optional里面。Optional就是第四个故事的主角,java8貌似希望用它来终结java程序员与NullPointException的各种爱恨情仇。
以上四个故事,看似主角不同,但实际上却互相有联系,这就是,本书在教我如何用它们之外告诉我的。
主线的故事,到这里其实已经结束了,但是除了这些,java8还有一些别的更新,这就有点像游戏的DLC、动画的OVA、gal的番外编(或者说fan disc)一样,用作主线的补充说明,例如CompetableFuture、新的日期API,以及从函数式编程出发的一些思考,还有scala这门语言的介绍,在这本书上都有说明。
总的来说,不愧是in action系列的书,看了这本书对java8还是挺有收获的,至少理清楚了java8的更新思路(可能具体的API就不一定完全记得了)以及函数式编程的思想以及在java中怎么用。
0回应|这条评论对您有用吗? 报告滥用情况
于 2017年12月10日
还是可以的,对于Java 8特性介绍的很全,在从现在项目组用的JDK 6升级到Java 8之后,学习这些新特性有助于减少代码的冗余度,虽然Kindle版是第一次买,但是还不错,排版什么的都满意
0回应|这条评论对您有用吗? 报告滥用情况
于 2017年11月24日
Java 8的重要特性说得好,每章结尾还有练习测试掌握程度
0回应|这条评论对您有用吗? 报告滥用情况
于 2017年6月26日
每次阅读都能收获很多新的东西,好书,值得推荐。
0回应|这条评论对您有用吗? 报告滥用情况
于 2017年4月3日
我推荐这本书和Core Java for the Impatient结合一起看,了解了现代java的写法后,最后再上Kotlin和Java9的module system,用es6/ts的写法写java的那一天就到来了
0回应| 6 个人发现此评论有用. 这条评论对您有用吗? 报告滥用情况
于 2017年7月11日
内容:内容有点少,当然,也可能是java8新加的东西就这么多,但我作为一个新手,感觉有点少。但讲的很透彻,很明白。虽然很多东西与C++想通,还是感觉到java的东西用起来门槛更低。
翻译:相当的通顺,完全不像那些不如直接看英文的翻译。
总之,30多块钱买来,太值了。希望类似翻译水平的书多一些。哪怕贵一点,也能物有所值。
0回应| 1 个人发现此评论有用. 这条评论对您有用吗? 报告滥用情况
于 2016年8月18日
如题,我觉得还是不错的,是本好书,壮哉,我大图灵~!
0回应| 3 个人发现此评论有用. 这条评论对您有用吗? 报告滥用情况
于 2017年8月22日
内容给五分,不过我买的kindle版本 很多用矩形框起来的代码段没有显示全,严重影响阅读。希望有人帮我看下。
0回应| 2 个人发现此评论有用. 这条评论对您有用吗? 报告滥用情况
于 2017年5月20日
看了几遍每次都能从中收获新的思想,总体来说是很有思想的一本书
0回应| 1 个人发现此评论有用. 这条评论对您有用吗? 报告滥用情况
前 1000 名评论人于 2017年4月26日
喜欢歪果仁写书的方式,具体形象,收获很大!
0回应|这条评论对您有用吗? 报告滥用情况