不知不觉做JAVA开发已经两年多了,《深入理解JAVA虚拟机》第二版是我很早就买的书,大多数时间也一直放在我的工作桌上。想要学习写一门语言的话很简单,掌握基本的语法和编程思想就可以上手工作了;但是想要深入理解和掌握一门语言必须得下苦功夫才可以,而这本书就是帮助你打开JAVA世界大门的钥匙。
说起这本书,必须讲一个不得不提的小故事。当年有幸跟一位大牛架构师邻桌而坐,而我每天早早去到公司学习,那会正在看这本书,那位大牛便跟我打了个赌,要是我当年能看完那本书(当时应该是十一月初的样子)他就再送我十本技术书,我一天信誓旦旦回答到这还不简单吗,还有将近2个月的时间呢。哎,没想到最后真的没看完,也就遗憾错失了大牛的送书,想来真是惭愧。
还是说书,除第一部分外,本书讲了4大部分的内容,每一部分都很精彩。自动内存管理机制的开篇第一句话就令人印象深刻,JAVA与C++之前有一堵由内存动态分配和垃圾收集技术围城的高墙,墙外的人想进去,墙里的人想出来。很是生动形象。之一部分重点就讲内存分配和垃圾回收,怎么说呢,还是跟日常开发工作密不可分,因为实际中也会经常碰到OOM的情况,如果真的深入了解了这些原理,在真正碰到问题去分析内存快照的时候也会比较迅速准确地定位到代码的问题。第三部分虚拟机执行子系统,解决了我刚学习JAVA时一个很大的困惑,就是我们的代码到底是怎样去运行,属性和方法怎样去工作,通读下来这一部分给了我不少启发,也会在平时的编码过程中去想一下这个事情,偶尔还能写出更加精彩的代码。第四部分程序编译与代码优化,正如书中所说,对效率的追求应该是每一个程序员天生的坚定地信仰,该章介绍了JAVA是怎样处理这个事情的,而我从中更多的学到了开发者设计这些的编程思路和思想。第五部分高效并发,是我最喜欢的一部分,对于JAVA中的并发虽不是特别全面的介绍,但是对于一些并发关键字,语言层面的并发设计是很少可以从其他地方看到这么精彩的解读,已经拿来拜读好多次。周老师真是很厉害的人啊。
这本书不仅用易懂的语言去讲明了JAVA虚拟机世界的知识,还在很多章节手把手教你用工具来自己调试,十分难得。书的整个目录体系十分清楚,各个部分的简介能够准确地介绍这部分的大体内容,是一个很好的设计。章节和小节标题标题意思鲜明。最后随书的附录也是很有用的工具。总之,真是一本不可多得的好书。
好的书读来神清气爽,又能学到知识。听说周老师已经出第三版了,不知道又增加了什么精彩的内容,一定要找机会好好拜读一番,相信对虚拟机的理解又可以前进一大步,希望每一个JAVA开发都能看到这么好的书。
第三版的购买链接在这里了第三版购买链接

《深入理解Java虚拟机:JVM高级特性与最佳实践》书评相关推荐

  1. 《设计模式之禅》书评

    前一段时间终于领到了我期待已久的<设计模式之禅>一书,但是由于工作的原因,一直没有时间静下心来细细品味作者那些来自自己工作实践中的禅语.我把这本书放在我的床前,每当我临睡前,我都会翻翻此书 ...

  2. 读秦小波《设计模式之禅》 -- 工厂模式

    设计模式是一种非常有用的编程技巧,它对于代码的重构有些非常重要的作用,对于软件开发人员来说,需要理解并尝试着使用这些设计的方法. 个人感觉<设计模式之禅>这本书中讲解的非常具体,每个模式都 ...

  3. 设计模式之禅--思维导图

    原图ProcessOn里搜索:设计模式之禅

  4. 23种设计模式彩图-设计模式之禅

    <The Zen of Design Patterns> -<设计模式之禅> 书中的23种设计模式彩图:

  5. 设计模式之禅【六大设计原则】

    大旗不挥,谁敢冲锋--6大设计原则 单一职责原则 "你设计的类符合SRP原则吗?"--保准对方立马"萎缩"掉,而且还一脸崇拜的看着你,心想"老大确实英 ...

  6. 《设计模式之禅》前言

    终于可以写前言了,这说明<设计模式之禅>已经基本完成,可以长嘘一口气了. 为什么写<设计模式之禅>      今年5月份,我在JavaEye上发了一个帖子,其中提到自己已经工作 ...

  7. 设计模式之禅【原型模式】

    真刀实枪之原型模式 先发个个性化电子账单来引出今天的主角 个性化服务 一般银行都会要求个性化服务,添加一些个人信息在提示信息之前. 递送的成功率 邮件的递送成功率有一定的要求,由于大批的发送邮件,会被 ...

  8. 设计模式之禅之单一职责原则

    声明:本文为阅读秦小波所写的<设计模式之禅>所写小结,文章内容可能有部分引述此书. 单一职责原则(Single Responsibility Principle) 1.定义:    在接口 ...

  9. 设计模式之禅【状态模式】

    真刀实枪之状态模式 从电梯说起 随着城市的发展,有两样东西的发明在城市的发展中起到非常重要的作用 汽车:横向发展 电梯:纵向发展 既然说电梯,那就看看电梯有哪些动作 开门 关门 运行 停止 好了,动作 ...

  10. 设计模式之禅【组合模式】

    真刀实枪之组合模式 从公司的人事架构谈起吧 公司的组织架构 从上图中可以分析出: 有分支的节点(树枝节点) 无分支的节点(叶子节点) 根节点(无父节点) 有了树状结构图,再看看类图长啥样吧! 这个类图 ...

最新文章

  1. Android-处理EditText中的“ Enter”
  2. boost::fusion::transform用法的测试程序
  3. MySQL5.7绿色版安装
  4. 常用数据类型(C#)
  5. 基于ASA防火墙的SSL ×××配置
  6. (2) 第二章 WCF服务与数据契约 服务契约详解(三)- [ServiceContract]特性
  7. 子集生成-增量构造法||位向量法
  8. [Java] - 项目中的防止同用户异地登录问题
  9. 8.26打架被批判一番还是要学习一个
  10. JAVA王思聪吃热狗程序_王思聪吃热狗什么梗?
  11. DSP2812和28335的区别
  12. 2008r2配置 iis mysql php_Windows Server 2008 R2 IIS7+PHP5(FastCGI)+MySQL5环境搭建
  13. mapabc 地图失效不能进行任何操作
  14. 电脑网速正常就是打开网页慢是什么原因啊?
  15. 51单片机学习历程——建立新的工程
  16. U-BLOX GPS 模块及GPRMC指令解析
  17. CVPR 2021 论文大盘点-超分辨率篇
  18. CityEngine学习资料——split分割
  19. 云安全软件市场现状研究分析报告 -
  20. django+python搭建消息推送系统

热门文章

  1. QQ、群推送今日天气(python+云函数)
  2. 程序运行报错:A JavaScript error occurred in the main process
  3. iOS平台无障碍化利器——VoiceOver
  4. 使用videojs实现视频播放
  5. PHP 判断字符串是否为正确对象/数组 Json 格式
  6. 命令行计算机ipconfig,ipconfig命令,小编教你ipconfig命令怎么使用
  7. js与c语言互相调用,JavaScript与Objective-C的互相调用
  8. 电脑重装系统后怎么安装打印机驱动使用打印机
  9. Android | 玩转AppBarLayout,设置scrollFlags滑动属性详解
  10. android笔记:安卓自带的主题android:theme