以下是我推荐给Java开发者们的一些值得一看的好书


“学习的最好途径就是看书“,这是我自己学习并且小有了一定的积累之后的第一体会


个人认为看书有两点好处: 1.能出版出来的书一定是经过反复的思考、雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超其他资料 2.对着书上的代码自己敲的时候方便 很多程序员们往往有看书的冲动,但不知道看哪些书,下面我就给各位Java程序猿们推荐一些好书,其中绝大多数都是我自己平时在看的书,也算是我对于平时读的书做一个小总结和读后感吧


《深入理解Java虚拟机:JVM高级特性与最佳实践》 作者是周志明 ,这本书可以说是国内写得最好的有关Java虚 拟机的书籍,近半年,前前后后这本书我起码看了有5遍


国内写虚拟机的书除了这本,其实还有一些其他的,我也买过,不过粗略看下来,很多内容也是《深入理 解Java虚拟机:JVM高级特性与最佳实践》此书里面的


另外值得一提的是,《深入理解Java虚拟机:JVM高级特性与最佳实践》这本 书,有电子版的,网上搜一下就能下载到了


不过建议有兴趣的朋友还是去买书看,电子版本下载到的一般是比较老的版本,相比最新修订版的《深入理解Java 虚拟机:JVM高级特性与最佳实践》,有很多作者新补充的知识点是没有的


《HotSpot实战》 我们平时使用的乃至商用的大多数Java虚拟机都是Sun公司的HotSpot,大家cmd进入命令行,使用”java -version”命令就可以看到了


如果希望在Java虚拟机规范的基础上更加深入地去理解虚拟机的一些细节是怎么实现的,就可以看一下《HotSpot实战》一书, 作者是陈涛


不过由于HotSpot的源码都是C/C++写的,所以要求读者有非常好的C/C++基础,如果对这两门语言不是很熟悉的朋友,看这本书可能对你帮助不是很大


最后提一句,如果有兴趣的朋友,不妨先去网上下载一个openJDK,HotSpot的源码就在里面


《Java并发编程实战》

翻开这本书看,多线程什么用、什么是死锁、什么是竞争、什么是线程安全等等,方方面面的知识点都用大量的文字篇幅讲解,不免让人感觉十分枯燥,也 难让读者有实质性的进步


我这本书看了两遍也属于一目十行意思,有兴趣的地方就重点看一下


无论如何,作为一本常常位于Jva程序员必读十大书籍排行榜前几名的书,还是一定要推荐给大家的


《java多线程编程核心技术》 作者高洪岩 ,想要学习多线程的朋友,这本书是我大力推荐的,我的个人博客里面二十多篇的多线程博文都是基于此书,并且在这本书的基础上进行提炼和总结而写出来的


此书和《Java并发编程实战》 相反,这本书的特点是大篇幅的代码+小篇幅的精讲解,可能这和中国人写的书比较偏向实用主义的风格有关


本书关于线程安全、synchronized、 Reentrant、Timer等等都用详细的代码进行了讲解,而且每个大知识点下的多个小知识点都会详细讲解到,非常有实践价值


《Effective Java中文版》 作者是Joshua Bloch ,这个人就很厉害了,他是谷歌的首席架构师,属于超级技术大牛级别了吧


这是唯一一本我没有买的书, 由于没有看过这本书,所以我不好发表评论,但是从这本书的知名度 以及其作者的来头来看(多提一句,这本书也是Java之父James Gosling博士推崇的一本书),我相信这一定是一本值得一看的好书


《深入分析Java Web技术内幕》 作者许令波 ,淘宝工程师


这本书我用一个字概括就是:全

真的非常全,HTTP、DNS、CDN、静态化、Jetty、Tomcat、Servlet、Spring、MyBatis等等,什么都有,涉及知识面非常广,但又不像专门精讲某个知识点的书籍一样讲得非常深入,感觉这本书就是尽量去用短的篇幅讲清楚一些Java Web使用到的技术的内幕,让读者对这些知识点的技术内幕有一个理性的认识


《大型网站技术架构 核心原理与案例分析》 一个字评价这本书,屌;两个字评价这本书,很屌;三个字评价这本书,非常屌


作者是李智慧 ,原阿里巴巴技术专家

关于分布式的知识点,都在这本书里面有体现,只有你想不到,没有他写不到,而且写得非常易懂,基本属于看一两遍,再记一些笔记就知道是怎么一回事儿了


多看 几遍,对分布式的理解一定会加深不少

而且里面不仅仅是分布式的知识,还非常接地气地写了如何做一个好的架构师,其实我认为这不仅仅是写给想做架构师的读 者看的,就是给读者一些建议,如何更好地提出意见、如何更让别人关注你的声音、如何看到他人的优点,入木三分,让人获益匪浅


《大型网站系统与Java中间件实践》 作者曾宪杰 ,是淘宝的技术总监,算起来应该在阿里有至少P8的级别了吧


本书要突出的重点是中间件三个字,中间件是分布式系统中一个非常重要的东西,其最重要的作用应该就是解耦,降低模块与模块之间的强依赖,不同的模块之间的依赖度降低,便可以各自独立地开发自己的功能,这也可以说是软件工程发展的目标和驱动力


因此,本书有一部分的内容就是基于中间件,详细讲解了中间件与JMS的各种知识,适合对分布式系统比较熟悉并且想要往中间件方面有一定研究的读者


《从Paxos到ZooKeeper 分布式一致性原理与实践》 作者倪超 ,阿里巴巴工程师


这本书是我最近在研读的一本书, 本书从分布式系统基本理论开始讲起,讲到Paxos算法,最后慢慢引入到Zookeeper,循序渐进


当然,更多的我目前还不方便发表什么看法,因为这本书的第二张Paxos算法我都还没有弄懂(Paxos算法确实有些难以理解和不太易懂),接下来的章节还没有看下去


如果网友们所在的公司在使用Zookeeper,并且你又对Zookeeper感兴趣想要研究一下它的原理的,这本书将是不二之选


《MySQL5.6从零开始学》 作者刘增杰和李坤

作为一名Java程序员,我认为我们千万不要觉得数据库是DBA的事情,数据库对一个Java程序员来说也是必须掌握的一门知识,丰富的数据库性能优化经验是一个顶尖程序员必备技能


MySQL学习我推荐的是这本我自己学习看的《MySQL5.6从零开始学》,我是觉得挺好的这本书,书里面的知识点很细致、很全面


《Spring源码深度解析》 作者郝佳

Spring 这个框架做得太好了,功能太强大了,以至于很多开发者都只知Spring,不知什么是工厂、什么是单例、什么是代理(我面试别人的真实体会)


这种功能强 大的框架内部一定是很复杂的实现,这就导致一旦你的程序使用Spring,出了问题,可能是Error、可能是Exception、可能是程序运行结果不 是你的预期的,出现诸如此类问题的时候,将会让你感到困惑,除了上网查资料或者问别人似乎没有更好的解决办法


后记 以上就是我推荐给Java开发者们的一些值得一看的书
但是这些书里面并没有Java基础、教程之类的

因为离我学习 Java基础过去好几年了,我学习的时候看的什么也忘了,所以我不能不负责任地推荐一些我自己都没有看过的书给大家


建议 对于Java基础知识的学习, 我提两点建议吧: 1、多写多敲代码,好的代码与扎实的基础知识一定是实践出来的 2、可以去博学谷下载一下基础的视频来学习一下Java基础


最后,每一位读到这里的网友,感谢你们能耐心地看完

希望在成为一名更优秀的Java程序员的道路上,我们可以一起学习、一起进步




欢迎投稿 职场/创业方向. 邮箱wangfzcom(AT)163.com:王夫子社区 » 成为Java顶尖程序员 ,看这11本书就够了

    标签:

点评 0

评论前必须登录!

登陆 注册