哲学家Ludwig Wittgenstein(1889—1951)曾说过,“我的语言之局限,即我的世界之局限”。基本意思是,你的语言限制了你思考问题的方式,学习编程语言也是同样的道理。

比如,你在C++中,需要非常麻烦地向正在运行的系统动态添加新类型,但如果决定迁移到Java上却显得自然而然,Java在C++基础上扩展了我们的编程思维。再比如,在Java中不了解upcasting就无法真正了解继承和多态,如果一旦开始使用Python就会发觉,Java语言再次使你的思维受限。

所谓的“思维受限”,实际是对“语言设计缺陷”层面缺乏认识。很难有技术书能够从语言设计层面既教你如何用,同时也告诉你为什么,首版发布于1996年的Thinking in Java开源书却同时兼顾了这两点,并因此多次荣获 Jolt 最佳图书奖(被誉为“软件业界的奥斯卡”)。

得益作者开放深度研讨的方式,该书也受到了全世界读者的追捧,被译为了十几种语言。但遗憾的是,在经历了4个版本的更新后,其最后一版Thinking in Java 4th发布于2007年,之后再无更新。

直至Java 8发布,原书作者Bruce Eckel才愿意重回Java,重新动笔完成了新书ON JAVA 8,一经发布就得到了读者的高度关注。

用Bruce话来讲,Thinking in Java是以纯面向对象思想教授编程,ON JAVA 8更像是对Java语言自身的重塑,借由函数式编程的视角来讲解。

1

 基于Java 8、11、17

Java 8 虽说是变化比较大的版本,吸收了函数式编程的一些优点,但作为长期支持版的 Java 17 都将发布了,这本书能给我们带来多大的帮助呢?关于本书版本的问题,图灵和几位译者、作者进行了深入的探讨,并最终决定根据Java11、17等版本的新特性做了关键更新。

2

 一线技术大咖专业解读

为了降低新手读者降低阅读难度,我们邀请到了从业Java开发十年以上,拥有一线Java开发经验的专家老师(DDD 专家张逸、服务端专家梁桂钊、软件系统架构专家王前明、译者陈德伟)为本书重点章节(高度贴合实际业务且易犯错的内容)录制精讲视频,帮你有效总结Java开发精要。

(上图为ON JAVA导读指南节选内容)

3

 流畅阅读,精准还原原作神韵

引进外版技术书经常被诟病的一点就是翻译质量,相信这也是很多读者最关心点,这同样也是我们最为重视的问题。

4位译者通过公开竞稿,从200多篇试译稿件中脱颖而出,均具备15年以上Java从业经验,有长期阅读英文著作的习惯,中文功底扎实,语言表达流畅。

为了进一步保证翻译质量,我们邀请了来自行业内的20位一线Java开发者参与本书的审校工作。并提前半年向部分读者开放出版,结合第一批读者的阅读反馈进一步进行修订。

借用图灵译者王明发老师的话来说,“没有趋近完美的译文,如果没有期限,可以改到天荒地老。” 诚然,译文质量的好坏见仁见智。如果之后您在阅读中遇到译错之处,也请大家在图灵社区多多提交勘误。

4

 业内专家高度赞誉

On Java 8 的中译版措辞精准,如实还原原作神韵。Bruce Eckel深入浅出地讲解了Java语言的设计原理,值得所有Java开发者一读,尤其推荐给刚入行不久的Java开发者,因为本书能够清晰地解答他们在业务开发过程中遇到的诸多疑问。

——周经森(Kingsum Chow),阿里CTO线研究员,JCP执行委员会委员

时至今日,Java这门企业级应用语言已走过26个年头,2014年发布的Java 8无疑是Java技术演进历史上的里程碑事件。《On Java 中文版》是Bruce Eckel时隔15年,继Thinking in Java之后的又一力作,基于Java 8,同时增加了Java 11 、17的相关内容,结合大量的源码实例,讲解了各种设计原理与实现权衡,使读者知其然而后知其所以然,很适合各个层次的Java开发者阅读。

——李三红,Java Champion,阿里云程序语言与编译器技术总监

市面上讲Java编程的书有很多,《On Java 中文版》是其中较为独特的一本“入门”书。初读可能会被它的篇幅和稍显晦涩的内容中途劝退,但如果有勇气重读,一定会从中受益。本书全面系统地介绍了Java核心知识,更重要的是,从编程语言设计的独特视角,以产业实践的得失为鉴,让读者不仅掌握体系化的知识点,而且能够切身体会软件设计的哲学与方法。透过现象看本质的能力一定程度上决定了职场高度,相信本书同样可成为Java开发者职场进阶的有效助力,值得不同阶段的开发者反复翻阅。

除以上,针对书中作者的某一观点,我持保留态度。今天的互联网大厂无一例外,所构建的Java应用规模都是超出想象的,绝不能用“普遍”“简单”来解释,其中的生产力和扩展性等核心能力是不可替代的。

—— 杨晓峰,Tencent JDK负责人

相信很多Java开发者都是通过阅读Bruce Eckel的经典书Thinking in Java,学会并爱上Java语言的。《On Java 中文版》这本书全面讲解了Java语言的精要所在,很高兴看到Bruce向书中补充了从 Java 9 到 Java 17 的新语言特性,完整呈现了Java语言的相关重点内容。这本书既涉及函数化编程、模块化技术、变量类型推断,也涉及record记录、sealed密封类和接口等新内容。边阅读、边调试代码、边思考设计原理和实现方式,Java这杯咖啡让人陶醉。

——张建锋,永源中间件总经理

十年前,当我还是实习生的时候有幸拜读了本书作者写的Thinking in Java。由于书很厚,我和一位同事还将书撕成三份,一份放在公司看,一份放在家里看,还有一份随身带着看,反复详读不下三遍。万丈高楼平地起,我一直认为夯实基础是刚入行几年的开发者最重要的事情!十年之后,Java经历了JDK6、7、8和9等多个版本的演进,本书与时俱进地增加了函数式编程、流和反射等JDK新特性。

——方腾飞,蚂蚁集团高级技术专家,《Java并发编程的艺术》作者

新书首发,我们为图灵老粉申请了10元购书补贴金,欢迎享用,祝早安~~

往期回复:

60岁代码匠的几篇小作文,解决了大多数程序的迷茫(上)

60岁代码匠的几篇小作文,解决了大多数程序的迷茫(下)

科幻电影里的超能力?那不就是并发嘛

是不是“异常”让我的脑子糊涂了?

等了15年,这本豆瓣评分高达9.3的编程巨著终于出版了!相关推荐

  1. 等了15年,这本编程巨著终于出版了!

    我是一本书,一本独特的Java编程书. 我很厚,光是基础版加起来就有800页,这不能怪我,因为Java的基础知识非常庞大,要想掰开了揉碎了讲透不是件容易的事情. 创造我的主人非常厉害,他不但是一家公司 ...

  2. 强烈推荐 | 豆瓣评分高达9.0的数学纪录片,从历史的角度给孩子科普数学知识...

    在豆瓣上的评分高达9.0的 BBC 纪录片"数学的故事(The Story of Maths)"是小编非常喜欢的一部纪录片:脉络清晰,逻辑清楚,深入浅出,从历史的角度给孩子科普数学 ...

  3. 豆瓣评分9.4!这一部纪录片,探秘中国人迹罕至的未至之境!

    全世界只有3.14 % 的人关注了 爆炸吧知识 Bilibili 联合"美国国家地理",悄悄出品了一部史诗级动物记录片,忍不住要推荐给大朋友小朋友们--<未至之境>. ...

  4. 豆瓣评分9.4!这一部纪录片,探秘中国的未至之境!

    全世界只有3.14 % 的人关注了 爆炸吧知识 Bilibili 联合"美国国家地理",悄悄出品了一部史诗级动物记录片,忍不住要推荐给大朋友小朋友们--<未至之境>. ...

  5. 震撼!豆瓣评分9.3,这部纪录片带你感受生命之重!

    全世界只有3.14 % 的人关注了 爆炸吧知识 达尔文的进化论为后人研究生命起源开启了明窗,"物竞天择,适者生存"的法则在各种生物演变上得到了印证,自然环境也是新物种产生.旧物种灭 ...

  6. python编程快速上手 让繁琐工作自动化 豆瓣_2019年,这些豆瓣评分9.0以上的8本程序员好书你都知道吗?...

    豆瓣这些9.0以上的高评分程序员好书你都知道有哪些吗?小编去豆瓣看了一下,推荐这8本最适用的程序员好书给你. 1.UNIX环境高级编程(第3版)(豆瓣评分9.6)UNIX编程圣经 与Linux相结合的 ...

  7. 人类视觉计算理论经典著作,豆瓣评分9.7,中文版惊鸿面世!

    关注公众号,发现CV技术之美 今天给大家介绍一本豆瓣评分高达9.7分.成书于40多年前的神书: Vision:A Computational Investigation into the Human ...

  8. 这部豆瓣评分 9.4 的古董沙雕剧和 Python ...

    可能你没发现,其实 Python 有些无厘头 这样的说法可能让你摸不着头脑,但是看完文章你会认同我的 故事得从很久很久以前说起 long long ago - 无厘头六人组 上个世纪 60 年代末期, ...

  9. 2019年,这些豆瓣评分9.0以上的8本程序员好书你都知道吗?

    豆瓣这些9.0以上的高评分程序员好书你都知道有哪些吗?小编去豆瓣看了一下,推荐这8本最适用的程序员好书给你. 1.UNIX环境高级编程(第3版)(豆瓣评分9.6) UNIX编程圣经 与Linux相结合 ...

最新文章

  1. 适用于Android的OpenSL ES指南-OpenSL ES的Android扩展
  2. Git SSH Key 生成并添加到github/gitee步骤
  3. JavaScript字符串操作方法大全,包含ES6方法
  4. openwrt gpio控制与使用
  5. windbg 常用命令详解
  6. 敏捷开发需求文档_需求的长期,敏捷文档
  7. Cocos2d-x windows + vs2010 配置图文详解
  8. C#对称加密(3des)和非对称加密(rsa)算法
  9. Oracle中将0x1D转为字符,orcle導入大數據文件
  10. SQL Server 不允许保存更改的解决方法
  11. java sql2000驱动下载_SQL Server 2000 JDBC驱动程序
  12. JNI/NDK入门指南之JavaVM和JNIEnv
  13. TFS2010 - 强制撤销签出
  14. word流程图两条线的端点连接_word流程图连接线怎么用
  15. 企业级docker仓库Harbor在kubernetes上搭建使用
  16. html设置图像边框的属性,css3将图像设置为元素周围边框的方法
  17. MSP430F149利用JTAG以及BSL下载配置图解!
  18. 119 李元翼 梧里 徒死無益
  19. Linux设备树特殊节点(aliases、chosen)介绍
  20. php 返回英文乱码,使用php 5时MySQL返回乱码的解决办法_php

热门文章

  1. 英语不好影响考PMP吗?
  2. jmeter察看结果树之json使用
  3. 中英文输入法的自动切换 (转)
  4. Mac 2020版M1 安装虚拟机发现网络不可用(配置方法)
  5. 装完声卡驱动还是没有声音?驱动人生8声音修复工具可以一键解决
  6. 《算法通关之路》-数学之美
  7. IFC模型文件查看器(基于IFC++开源库实现)
  8. 全网最详细的Gephi安装与使用教程
  9. Dplayer Blob对视频播放地址加密
  10. TF卡里删掉文件后内存没变大_TF卡,SD卡,读卡器,USB拓展坞如何选?看这篇就够了...