Java实战(第2版)

[英] 拉乌尔-加布里埃尔 • 乌尔玛

出版时间

2019-11-01

ISBN

9787115521484

评分

★★★★★

标签

编程

书籍介绍

现代Java应用充分利用了微服务、反应式架构以及流式数据等创新设计。现代Java特性,譬如Lambda、流以及大家期待已久的Java模块系统让这些设计的实现极其便利。是时候更新技能工具箱了,只有这样,你才能从容应对迎面而来的种种挑战!

本书通过透彻的示例和通俗的语言讲解了Java语言这些最激动人心的特性,作者注重细节,努力降低了学习难度,节省你宝贵的时间。依照本书边学边练,你可以很快掌握流应用程序接口、Java模块系统等现代Java新特性,再进一步去探寻实现并发的新方法,了解函数式编程如何帮你编写可读性好又容易维护的代码。潜心修炼,你的编程实力必能提高到新的层次。

本书特色:

●对上一版(《Java 8实战》)做了全新改版

●Java 8、9、10及后续版本新特性介绍

●流数据处理以及反应式编程

●Java模块系统

AI导读
核心看点
  • 深入解析Lambda、Stream及函数式编程
  • 详解Java 8至11版本的新特性与演变
  • 涵盖反应式编程、并发及模块化系统
适合谁读
  • 希望掌握现代Java特性的开发者
  • 有Java基础需进阶函数式编程者
  • 从事微服务与高并发应用开发的工程师
读前提醒
  • 建议结合代码实践,边学边练效果更佳
  • 可作为参考手册,按需查阅特定知识点
  • 若已读过第一版,可重点阅读新增章节
读者共识
  • 代码更优雅,显著提升编程效率与可读性
  • 知其然更知其所以然,剖析特性设计初衷
  • 干货满满,但部分读者认为新增内容有限

本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。

精彩摘录
  • "In fact, using synchronized across multiple processing cores is far more expensive than we often expect, because synchronization forces code to execute sequentially, which works against the goal of parallelism."
  • "同步API与异步API 同步API其实只是对传统方法调用的另一种称呼:你调用了某个方法,调用方在被调用方 运行的过程中会等待,被调用方运行结束返回,调用方取得被调用方的返回值并继续运行。即 使调用方和被调用方在不同的线程中运行,调用方还是需要等待被调用方结束运行,这就是阻 塞式调用这个名词的由来。 与此相反, 异步API会直接返回,或者至少在被调用方计算完成之前,将它剩余的计算任 务交给另一个线程去做,该线程和调用方是异步的——这就是非阻塞式调用的由来。执行剩余 计算任务的线程会将它的计算结果返回给调用方。返回的方式要么是通过回调函数,要么是由 调用方再次执行一个“等待,直到计算完成”的方法调"
  • "并行——使用流还是CompletableFutures? 目前为止,你已经知道对集合进行并行计算有两种方式:要么将其转化为并行流,利用map 这样的操作开展工作,要么枚举出集合中的每一个元素,创建新的线程,在CompletableFuture内对其进行操作。后者提供了更多的灵活性,你可以调整线程池的大小,而这能帮助 你确保整体的计算不会因为线程都在等待I/O而发生阻塞。 我们对使用这些API的建议如下。 ❑如果你进行的是计算密集型的操作,并且没有I/O,那么推荐使用Stream接口,因为实 现简单,同时效率也可能是最高的(如果所有的线程都是计算密集型的,那就没有必要 创建比处理器核数更多的线程"
  • "第二,要求它是 Predicate<Apple>(目标类型)对象的第二个正式参数"
  • "名叫开放服务网关协议(open service gateway initiative, OGSi)"
作者简介
作者简介: 拉乌尔–加布里埃尔•乌尔玛(Raoul-Gabriel Urma) 剑桥大学计算机科学博士,软件工程师,培训师,现任Cambridge Spark公司CEO。在谷歌、eBay、甲骨文和高盛等大公司工作过,并参与过多个创业项目。活跃在技术社区,经常撰写技术文章,多次受邀在国际会议上做技术讲座。 马里奥•富斯科(Mario Fusco) Red Hat高级软件工程师,负责JBoss规则引擎Drools的核心开发。拥有丰富的Java开发经验,曾领导媒体公司、金融部门等多个行业的企业级项目开发。对函数式编程和领域特定语言等有浓厚兴趣,并创建了开放源码库lambdaj。 艾伦•米克罗夫特(Alan Mycroft) 剑桥大学计算机实验室计算学教授,剑桥大学罗宾逊学院研究员,欧洲编程语言和系统协会联合创始人,树莓派基金会联合创始人和理事。发表过大约100篇研究论文,指导过20多篇博士论文。他的研究主要关注编程语言及其语义、优化和实施。他与业界联系紧密,曾于学术休假期间在AT&T实验室和英特尔工作,还创立了Codemist公司,该公司设计了最初的ARM C编译器Norcroft。 译者简介: 陆明刚 毕业于四川大学,目前在Dell EMC中国卓越研发集团任高级主管工程师,曾任趋势科技中国软件研发中心技术经理,在信息科学和工程领域有十余年的实践和研究经验,拥有多项中国及美国专利。关注JVM性能调优和大数据及其实践,喜欢挖掘技术背后的内幕并乐此不疲。 劳佳 上海交通大学硕士,现任SAP(美国)高级软件支持顾问。业余爱好语言、数学、设计,英、法双语译者,近年翻译出版了《咨询的奥秘》《卓越程序员密码》《计算进化史:改变数学的命运》等书。
目录
第一部分 基础知识
第1章 Java 8、9、10以及11的变化  2
1.1 为什么要关心Java的变化  2
1.2 Java怎么还在变  4
1.2.1 Java在编程语言生态系统中的位置  5

显示全部
用户评论
书是好书。遇到令人抓狂的翻译只好去网上下载英文原版对照时除外
如果未读过第一版,那么这边书力荐阅读,如果读过第一版,这本书推荐指数3星,推荐去图书馆阅读。
第二版比第一版的内容丰富了很多,也深入了很多,特别是后面对Stream,Completable Future和响应式编程RxJava的讲解解答了困惑我很久的问题。
还是那个味,推荐大家看一下,里面的lambda和流讲的很经典。在我心中可以说是与深入理解Java虚拟机并列的神书了。但是翻译真的有点拉胯,读起来有种机翻的味道...
主要还是JAVA8的内容,加了一些java9的一些case。对于响应式编程有个大致了解。
系统看下,免得每次现查。
快速过了一遍,这种书还是得当参考手册用,实际编码过程中碰到相关知识点了再来细看
翻译辣眼睛,扣三星
很赞超级赞!一直在用stream和lambda语法,但始终感觉有点不顺手,读完这本书后感觉顺溜很多啦!毕竟百度上全是cv的东西,没一点有用的。学新技术还是看书老的全面系统。
下载
收藏