转载

“复杂性思考”与“Java虚拟机”的碰撞

“复杂性思考”与“Java虚拟机”的碰撞

实话实说,《深入理解Java虚拟机》第三版样书送来之前,无法想象前两版300000册销量背后的读者,究竟是怎样的一个群体?在小范围发布书评官招募海报的一小时内,瞬间就涌进几百号人,不停地问“真的第三版要出了吗?”“哇!一代Java神书”“哪里可以买?”“什么时候发货?”……
没有想到,原来大家等了这么久,2011年第一版横空出世、2013年第二版如期而至,现在离“小时候作文里的2020年”真的没有几天了。
但可以很肯定地告诉大家:是的,我们带着《深入理解Java虚拟机》第三版重磅回归了,这一版根据JDK新版本全面升级,新增内容近50%,从Java技术体系、自动内存管理、虚拟机执行子系统、程序编译与代码优化、高效并发5个维度全面分析JVM。
100位书评官招募期间,我们很荣幸地请到了《复杂性思考:复杂性科学和计算模型(原书第2版)》的译者郭涛老师谈谈他与Java虚拟机的故事。(《复杂性思考》此书即将出版,请大家多多关注!)

“复杂性思考”与“Java虚拟机”的碰撞

畅谈《深入理解Java虚拟机》著作

Java语言问世已有25年的历史,自从它出现,一直独占鳌头,排列在开发语言前列。这些年,很多科学家、工程师和技术人员写了很多关于Java主题的畅销书,例如《Java编程思想》、《Java并发编程艺术》和《Java核心技术》等。这些著作的问世,进一步推动了Java语言在开发界的知名度,创造了一个良好的Java生态圈。

近十年,云计算、大数据和人工智能等新一代信息技术对互联网和各个行业产生了冲击,开发了Hadoop、Spark、Flink、Greenplum和Tensorflow等分布式存储和并行计算平台,这些底层平台很多都是基于Java实现的,同时很多BAT大厂在招聘首席科学家、高级工程师和工程师,都要求应聘者需要至少对一门开发语言底层实现机制熟悉,并要求对底层语言具有改进、优化和设计的能力。这种能力要求无疑是很高的门槛,这样把很多人挡在了门外。在十年前,市场上Java底层语言的资料基本上是空白,尤其在Hadoop大行其道的时候,很多人花费了大量的时间去读源码,如果有读者经历过,肯定尝尽了苦头。看懂了源码不是万事大吉,最主要的是去优化和改进设计,这些对工程师提出了很高的要求。这种要求从未停止,也不会停止,自从2015年以来,机器学习、数据挖掘和数据科学等盛行,不仅需要扎实的数据、统计学和理论计算机的功底,也对数据结构、开发语言和平台架构设计提出了很高的要求,这不得不让更多的工程师向底层调整。尤其云栖大会和很多技术讨论会,BAT、滴滴、美团、高德等工程师无不从底层讨论,无不从性能优化和算法调优开始,这些都有一个前提,需要工程师对开发语言底层有清晰认识,具体调优和设计的能力,这也是衡量一个工程师卓越程度。

周志明老师的著作《深入理解Java虚拟机》出版无疑是工程师的福音,尤其对于想深入研究Java虚拟机的工程师。我第一次读周老师的书是在2012年,那时候我还是Java语言小白,学了一些基础的课程和Java的语法,大师兄推荐了让我读《Java编程思想》,读完让我读周老师《深入理解Java虚拟机(第1版)》这本书,读了两遍感觉苦涩难懂,那本书被压箱底了。后面跨专业读计算机研究生,学院开设了算法设计与分析、高级操作系统、高级数据库等课程,学院很多老师都是国防科技大学和中南大学计算机系毕业,很多都有扎实的理论计算机基础,给我们讲的都偏理论化,那时候使用最多的语言是C/C++,受同门环境影响,现在徐师弟、周师弟和陈师妹从事算法工程师工作,使用C/C++居多。我本科不是计算机专业,硕士做的方向是系统开发与集成方向,我跟王老师学算法设计和分析,又自己花时间学了离散数学、数据结构(C语言)等基础课程。那时云计算、大数据越炒越火,我也跟着这股潮流,不约而同的研究Hadoop源码,我那时候便开启了Java学习模式,恰巧周老师的第二版《深入理解Java虚拟机》。在这之前看了花很长时间看了Mark Allen Weiss写的《数据结构与算法分析:Java语言描述》英文版,基本上看懂了七七八八,后面看周老师的书感觉好多了。随后工作需要,又学习了Python开发语言以及Michael T. Goodrich写的《数据结构与算法:Python语言实现》。我工作主要从事大数据平台研发、数据挖掘和机器学习与遥感科学与技术、地理空间信息工程交叉的部分。我的工作以平台研发作为基础,所有的数据挖掘与机器学习都集成到平台,让其下沉到生产环境,贴近生产环境,这些需求让我在工作中把Java语言作为TIT Lab团队的标配语言。因此,周老师的《深入理解Java虚拟机》是我书房的常客,前前后后翻了七八次,对里面的机制进行了多次研究。这也是国内最早出版的Java虚拟机的技术书,它一直陪伴在我身边,让我受益颇多。

听闻近期周老师第三版马上出版,心里充满无限期望,时隔6年,这6年Java从版本6快速迭代到13,里面底层重新设计,很多特性进行了改进。很多工程师对这本书出版期待已久。希望这本书能够给工程师对Java虚拟机带来新的认识,也感谢周老师十年磨一剑,这种工匠精神在技术界还是很少见,希望前辈行为能够成为我们这些晚辈榜样,忠于自己的方向与职业,成为我们烙印,深入骨髓。

最后送同行二句话作为共勉:

“Talk is cheap, Show me the Code.”。

“You build it, You run it.”。

郭 涛

2019年12月12日于四川省农业科学院遥感应用研究所

推荐阅读

“复杂性思考”与“Java虚拟机”的碰撞

“复杂性思考”与“Java虚拟机”的碰撞

长按二维码

了解及购买

“复杂性思考”与“Java虚拟机”的碰撞

点击“阅读原文”了解及购买!

原文  http://mp.weixin.qq.com/s?__biz=MzI0NTIxNzE1Ng==&mid=2651218554&idx=3&sn=8b5725232486ca252d1f56c2f2bd69c8
正文到此结束
Loading...