前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Java工程师书单(初级、中级、高级)

Java工程师书单(初级、中级、高级)

作者头像
Java团长
发布于 2018-08-07 08:17:22
发布于 2018-08-07 08:17:22
1.2K0
举报

简介

怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作一两年之后开始迷茫的程序员经常会问到的问题

笔者完全从自身的自学经历出发,以初学者的视角挑选出如下的这些图书。

初级书单

《编写高质量代码——改善Java程序的151个建议》

这是一本值得入门java的人放在床头的书。此书内容广泛、要点翔实。大多数优秀程序设计书籍都需要看老外写的,但是这本讲述提高java编程水平的书还是不错的,适合具有基本java编程能力的人。

对于程序猿而言,工作久了,就感觉编程习惯对一个人很重要。习惯好,不仅工作效率告,而且bug少。这本书对提高个人的好的编程习惯很有帮助。

《Java程序员修炼之道》

此书涵盖了Java7的新特性和Java开发的关键技术,对当前大量开源技术并存,多核处理器、并发以及海量数据给Java开发带来的挑战作出了精辟的分析,提供了实践前沿的深刻洞见,涉及依赖注入、现代并发、类与字节码、性能调优等底层概念的剖析。

书中的道理很浅显,可是对于菜鸟却是至理名言。基本为你勾勒了一个成熟软件程序员专家所需要的所有特性。我自觉地获益颇多,其中很多事情,要么在当时是自己没有想到的,要么是发生了,自己没有注意的等等。给我影响很大。

《Java8实战》

本书全面介绍了Java 8 这个里程碑版本的新特性,包括Lambdas、流和函数式编程。有了函数式的编程特性,可以让代码更简洁,同时也能自动化地利用多核硬件。全书分四个部分:基础知识、函数式数据处理、高效Java 8 编程和超越Java 8,清晰明了地向读者展现了一幅Java 与时俱进的现代化画卷。

这是了解lambda 表达式最好的入门书籍了。在网上也学习了lambda 表达式,感觉会用,就是不知道原理,稍微换一下场景又不会用了。这本书绝对是学习java8新特性的最好书籍。

《有效的单元测试

此书由敏捷技术实践专家撰写,系统且深入地阐释单元测试用于软件设计的工具、方法、原则和佳实践;深入剖析各种测试常见问题,包含大量实践案例,可操作性强,能为用户高效编写测试提供系统实践指南。

介绍了单元测试的各个方面,TDD、test double、测试的坏味道、可测试的设计等等,每个主题需要深入的话,还需要配合其它书籍和实践,非常适合入门单元测试。书中例子非常全面,看完对使用 Junit 进行单元测试会有一个大的长进,而且用java语言编写,内容很新。

《Java核心技术:卷2 高级特性》

此书系统全面地讲解Java语言的核心概念、语法、重要特性和开发方法。本书全面覆盖Java技术的高级主题,包括流与文件、XML、网络、数据库编程、国际化等,详细描述了图形与GUI编程,还涉及安全、远程方法、注解处理、本地方法等。本书对Java技术的阐述精确到位,叙述方式深入浅出,并包含大量示例代码,能够帮助读者充分理解Java语言并灵活应用。

卷二虽然是高级特性,但是其中的io、文件系统、正则表达式、网络、jdbc也是日常编程中非常常用的组件,不可不看。此书是一本非常轻松的Java技术书,不仅原文写得好,译者翻译的也非常流畅。在我对翻译的书绝对无望的时候,它力挽狂澜的告诉我,事情还没有坏到这个地步。

《代码整洁之道》

代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践。这些实践在本书中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

如果每个例程都让你感到深合己意,那就是整洁代码。 如果代码让编程语言看起来像是专为解决那个问题而存在,就可以称之为漂亮的代码。

数据结构与算法分析-Java语言描述》

本书是java数据结构与算法方面的三宝之一,除了这三本其他的已经没有意义了。这三宝分别是:

* 黑宝书《数据结构与算法分析java语言描述》mark allen weiss

* 蓝宝书《java数据结构和算法》robert lafore

* 红宝书《算法》robert sedgewick

黑宝书胜在公式推理和证明以及算法的简洁和精炼,此外习题较多。蓝宝书胜在对算法的深入浅出的讲解,演示和举例,让艰涩的理论变得很容易理解。红宝书胜在系出名门斯坦福,演示通俗易懂,内容丰富。有了这三宝,算法不用愁,学完以后再看《算法导论》就容易多了。

本书从讲解什么是数据结构开始,延伸至高级数据结构和算法分析,强调数据结构和问题求解技术。本书的目的是从抽象思维和问题求解的观点提供对数据结构的实用介绍,试图包含有关数据结构、算法分析及其Java实现的所有重要的细节

中级书单

《重构:改善既有代码的设计》

重构,绝对是写程序过程中最重要的事之一。在写程序之前我们不可能事先了解所有的需求,设计肯定会有考虑不周的地方,而且随着项目需求的修改,也有可能原来的设计已经被改得面目全非了。更何况,我们很少有机会从头到尾完成一个项目,基本上都是接手别人的代码,我们要做的是重构,从小范围的重构开始。

重构是设计,设计是art,重构也是art. 一个函数三行只是语不惊人死不休的说法,是对成百上千行代码的矫枉过正。 更一个般的看法是一个函数应该写在一页纸内。

《Effective Java》

这样一本书本该早就读了,然而最近才看完。看完觉得对于一些编程规则深层的原理有了一些认识。之前我只是知道这些口口相传的规则,却不知道为什么,在这本书中找到了一些答案。书中涉及到了java编程方方面面的规则,包括类、接口、创建对象、类中的函数、函数的参数、异常。

如果你使用刚刚学会的Java做了一个小应用程序,那么你就可以开始有选择地看这本书。书中分别对Java的不同特性分章节给予作者本人的建议。如果你还没有用到其中的某一特性,那么就没必要读相关的章节,跳过去。只有你经历过了,摔倒过了,困扰过了,你才会与书中的建议产生共鸣

《Java并发编程实战》

本书深入浅出地介绍了Java线程和并发,是一本完美的Java并发参考手册。书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构建块,用于避免并发危险、构造线程安全的类及验证线程安全的规则,如何将小的线程安全类组合成更大的线程安全类,如何利用线程来提高并发应用程序的吞吐量。

java进阶必看,多线程的最佳书籍。

《实战Java高并发程序设计》

此书主要介绍基于Java的并行程序设计基础、思路、方法和实战。首先,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。第二,进一步详细介绍JDK中对并行程序的强大支持,帮助读者快速、稳健地进行并行程序开发。第三,详细讨论有关“锁”的优化和提高并行程序性能级别的方法和思路。第四,介绍并行的基本设计模式及Java8对并行程序的支持和改进。第五,介绍高并发框架Akka的使用方法。最后,详细介绍并行程序的调试方法。

在集群和分布式环境下,java内置锁逐渐失去了用武之地,但是锁和并发的思想还是通用而且值得学习的。看过java并发编程实战以后再读这本书,每一个知识点都比较精炼而且代码示例简单易懂,没有晦涩难懂的翻译词,手绘图也有一种亲切感。缺点是没有附源码,需要自己去github上找。

《算法》

个人觉得是我见过的最简单易懂的算法入门书籍。以前搜刮过几本算法竞赛书,但是难度终归太大。本书使用Java语言实现算法,配有大量的图解,没有一句难懂的话,而且全都是模块化实现。讲的都是实用算法,没有那些高大上听着名字就让人感到很害怕的东西,个人觉得比CLRS实用性要强,更加适合入门的学习。

此书力图研究当今最重要的计算机算法并将一些最基础的技能传授给广大求知者。它适合用做计算机科学进阶教材,面向已经熟悉了计算机系统并掌握了基本编程技能的学生。本书也可用于自学,或是作为开发人员的参考手册,因为书中实现了许多实用算法并详尽分析了它们的性能特点和用途。这本书取材广泛,很适合作为该领域的入门教材。

《Head First 设计模式》

这是我看过最幽默最搞笑最亲切同时又让我收获巨大的技术书籍! 森森的膜拜Freeman(s)!Amen! 深入浅出,娓娓道来,有的地方能笑死你!写得很有趣,图文并茂,比起四人帮的那本,好懂了不知道多少倍。计算机世界的head first系列基本都是经典。不过只看书学明白设计模式是不可能的,这些只是前人的总结,我们唯有实践实践再实践了。

读这本书不仅仅是学习知识,而是在学习一种思考的方法,学习一种认知的技巧,学习一种成长的阶梯。 总之,用你闲暇的时间来读这本书,并不亚于你专注的工作或学习。笔者强烈推荐此书,要成长为一名高级程序员,设计模式已经是必备技能了。

《Java编程思想》

就是一本能够让Java程序员轻松面对挑战,并最终取得胜利的经典书籍。本书深入浅出、循序渐进地把我们领入Java的世界,让我们在不知不觉中就学会了用Java的思想去考虑问题、解决问题。本书并不适合Java的初学者,更适合于有经验的Java程序员,这正是本书的魅力所在。但是,书中并没有涵盖Java所有的类、接口和方法,因此,如果你希望将它当作Java的字典来使用,那么显然就要失望了。

如果你开始觉得自己需要一些编程内功了,这本书就开始管用了,作为一本练习内功的基础书籍。把心静下来,老老实实打好内功根基,你会发现自己将会不一样,当然最直接的体现就是工资待遇上的。。从这本书开始,无论是走向架构,多线程或者虚拟机,路都会变得平坦很多。

高级书单

《深入理解Java虚拟机》

本书是近年来国内出版的唯一一本与Java虚拟机相关的专著,也是唯一一本同时从核心理论和实际运用这两个角度去探讨Java虚拟机的著作,不仅理论分析得透彻,而且书中包含的典型案例和最佳实践也极具现实指导意义。

我对本书最大的感受就是:全面。作为一个刚开始接触 JVM 的人,我感觉本书基本上把 JVM 中所涉及的概念涵盖到。在阅读的过程中还有一种感受:如果作者不介绍某个内容,我在参考 Java 虚拟机的文档的时候可能不会考虑到有这样的因素存在,或者不会那么容易理解。作为一本全面的引人入门的书籍,这本书实在是很赞。

《Java性能权威指南》

市面上介绍Java的书有很多,但专注于Java性能的并不多,能游刃有余地展示Java性能优化难点的更是凤毛麟角,本书即是其中之一。通过使用JVM和Java平台,以及Java语言和应用程序接口,本书详尽讲解了Java性能调优的相关知识,帮助读者深入理解Java平台性能的各个方面,使程序如虎添翼。

为了理解gc那块看过来的,cms个人感觉讲的挺好的,和《深入理解java虚拟机》垃圾回收部分互为补充吧。有一点觉得挺赞:翻译的比较好,没有那种翻译腔!

《深入分析Java Web技术内幕》

这本书的整体感觉不错,基本上是从基本原理介绍出发的。适合互联网技术爱好者阅读,也可以作为技术架构参考书籍。本书不仅是介绍了基本知识和原理,很多东西作者是站在系统架构的原理出发的,所以对爱好系统架构的读者是很有帮助的。本书的主要特点是“图文并茂,有图,有事实,有真相”,阅读起来不枯燥,晦涩。

入行java两三年,说会但是对底层还是一知半解,遇到系统级问题就还是不知道怎么解决,所以要看深层次的书了,本书就是。

《大型网站系统与Java中间件实践》

此书围绕大型网站和支撑大型网站架构的 Java 中间件的实践展开介绍。从分布式系统的知识切入,让读者对分布式系统有基本的了解;然后介绍大型网站随着数据量、访问量增长而发生的架构变迁;接着讲述构建 Java 中间件的相关知识;之后的几章都是根据笔者的经验来介绍支撑大型网站架构的 Java 中间件系统的设计和实践

通过这本书可以学习到大量构建大型网站系统的核心技 术,以及支撑大型网站的Java中间件的必备知识。作者在超大型电子商务网站的多年实战经验使得本书的内容极具价值。 如果你所在的技术团队正在因面对大型网站而一筹莫展,或 许你可以从这本书中得到启发。另外,如果想成为Java技术架 构师,那么你也不应错过此书。

《大型网站技术架构:核心原理与案例分析》

此书通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,为读者呈现一幅包括技术选型、架构设计、性能优化、Web安全、系统发布、运维监控等在内的大型网站开发全景视图。

本书从多个层面说明了如何构建一个高可用、高性能、高可扩展性的网站系统,并结合了阿里巴巴及其他互联网企业先进的架构实践经验进行案例分析,讲述非常全面且具指导意义。本书从网站的架构设计、快速开发、高效部署、业务监控、服务治理、运维管理等多个角度描述了架构设计的相关重点,涉及的核心技术包括前端优化、CDN、反向代理、缓存、消息队列分布式存储、分布式服务、NoSQL存储、搜索、监控、安全等一系列保证大型网站安全可靠运行的关键技术点。本书还提供了网站如何从小型网站伴随用户成长,逐步扩展到大型网站的架构演进思路,是互联网架构师们不可多得的一本技术参考书。

《企业应用架构模式》

招式套路可以千变万化,扎实深厚的“内功”却是始终如一!虽然企业应用涉及的软件技术不断翻新,但是基本的架构及设计思想却没有太多变化。将以前行之有效的设计思路和方法加以适当调整,并应用到当前的问题上,是最高效的做法。在一组专家级合作者的帮助下,Martin将40多种经常出现的解决方案转化成模式,最终融会成这本“内功心法”。在仔细研读、用心揣摩本书之后,希望它能够帮助你应对任何一种企业应用平台,驾驭任何一种企业应用技术—无论是现在的技术还是未来的技术。

开始看这本书时,觉得讲的太抽象,草草的翻了一遍,很多东西只有一个浅浅的一个印象。后来在用hibernate的时候,偶尔又重新翻开这本书。书里讲的很多东西,都在hibernate里面有体现。尤其是讲关系映射那章,在hibernate文档里面都只讲怎么做,不讲为什么,在书里讲的很清楚,看了很有收获。

《Expert One-on-One J2EE Development without EJB》

选择一种架构、一种技术的依据是什么?Rod Johnson认为,应该是基于实践的证据、来自历史项目或亲自试验的经验,而不是任何形式的偶像崇拜或者门户之见。书中谈到了企业应用方方面面的问题和解决办法,而这些方案无一不是这种“循证方法”的产物。除了把这些方案交给读者,Rod Johnson通过这本书希望传达的、更为重要的信息正是“循证”的工作方式——那原本就应该是程序员的工作方式。

对Spring熟悉或者希望深入学习Spring框架精髓的工程师而言,本书必看,因为它就是是Spring框架发展的基石。

总结

最后,各位读者在阅读本系列书单的同时,也可以留言告诉笔者你认为的Java技术相关的好书籍,我会根据大家的留言情况及时更新本系列书单的内容。当然,如果不是Java相关,只要是咱们程序员喜欢或需要的其他有趣、有料的好书也可以。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java团长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java书单——由入门到上天
入门 · 练级 书名 介绍 《Head First Java》 非传统的教学方式,运用大量图片和对话,尽量有趣地讲解严肃的技术主题。适合初学者的入门书籍。当然,也有同学反映信息密度不高,学习效率一般。 《Java 核心技术:卷1 基础知识》 口碑最好的Java教程。系统全面讲解Java语言的核心概念、语法、重要特性和开发方法,内有大量程序实例,极具实用价值。 是Java初学者和Java程序员的必备参考书。 进阶 · 打怪 书名 介绍 《Effective Java》 Joshua Bloch大神(Jav
高广超
2018/12/12
4630
Java后端工程师必备书单(含大后端方向相关书籍)
作者黄小斜,斜杠青年,某985硕士,阿里研发工程师,于2018 年秋招拿到 BAT 头条、网易、滴滴等 8 个大厂 offer
程序员黄小斜
2019/03/11
3.3K0
腾讯 Web 工程师的前端书单
腾讯IVWEB团队
2017/03/13
25.5K9
推荐Java程序员必读的13本书
在学习Java的过程中,有一些书本被传颂为经典之物,大多数时候,我们在项目需要的时候,用到不那么熟悉的技术,才会去读相关的书籍,以寻找相关的解决方案。
HaC
2020/12/30
3.6K0
推荐Java程序员必读的13本书
Java学习必备书籍推荐终极版!
很早就想把书单更新一下了,昨晚加今天早上花了几个时间对之前的书单进行了分类和补充完善。虽是终极版,但一定还有很多不错的 Java 书籍我没有添加进去,会继续完善下去。希望这篇文章对你有帮助,不要再无书可看。
乔戈里
2019/05/13
1.6K0
这些年,安放在我工位上的那些书
博主提交离职申请之后,就慢慢的将自己工位上的一些东西收拾回家,其中光书就运了好多次,其中有好书也有烂书,这里就站在我个人的视角来聊一聊这些书。
三哥
2018/07/31
3880
这些年,安放在我工位上的那些书
Java后端工程师必备书单(从Java基础到分布式)
Java开发工程师一般负责后端开发,当然也有专门做Java Web的工程师,但是随着前后端的分离,越来越多的Java工程师需要往大后端方向发展。
Java技术江湖
2019/10/15
8550
这份Java Web必读书单,值得所有Java工程师一看!
经过了10多年的发展,Java Web从开发框架到社区都已经非常成熟,而目前市面上最流行的Java Web框架已然是Spring全家桶,从过去的Spring,SpringMVC,再到SpringBoot。而曾经流行的JSP和servlet,随着前后端分离的趋势,以及Spring这类框架的冲击,也逐渐地淡出了人们的视线,被历史所抛弃。
程序员黄小斜
2020/04/14
2.1K0
Java程序员必看的 13 本 Java 书籍!
毕竟,书是学习的海洋呢!So,Java程序员你们准备好了吗?双手奉上Java程序员必读之热门书单。
Java技术栈
2018/11/30
1.7K0
Java程序员必看的 13 本 Java 书籍!
Java工程师核心书单推荐
书籍是获取知识的最好来源之一。技术书籍浩如烟海,市场上有不少《XXX入门到精通》,《XXX王者归来》,《21天学会XXX》这样的书,当然也有不少经典,个人的精力有限,这些经典不可能都通读。所以·,博主尝试整理一个Java工程师所需知识的核心书单,尽可能优中选优,挑选出Java工程师必备知识的一些最核心、最经典的书籍,希望能一起学习,一起进步。
三分恶
2021/03/16
6590
Java工程师核心书单推荐
java 进阶之路(书籍推荐)
学习Java,书籍是必不可少的学习工具之一,尤其是对于自学者而言。废话不多说,下边就给大家推荐一些Java进阶的好书。
马士兵的朋友圈
2020/09/08
1.9K0
java 进阶之路(书籍推荐)
成为Java架构师必看书籍,你看过几本
对想要持续提升其技术水平的java程序员来说,自学最重要的是阅读更多的相关书籍。Java程序员如何向java架构师迈进?我给大家整理了一份必须阅读的书单。 从Java到Java架构师书单   一.Ja
用户7353950
2022/06/23
4940
给Java程序猿们推荐一些值得一看的好书
本文介绍了如何利用Java编程实现一个简单的RESTful API,包括定义API端点和请求方法,处理请求和响应,以及使用Spring Boot和Kotlin构建Web应用程序。同时,还向读者推荐了一些值得阅读的书籍,以帮助读者进一步提高自己的Java编程技能。
Java后端工程师
2017/12/14
2.5K0
我的2016年书单
相对于电子书,我更喜欢纸质版的书籍。我喜欢在拿到新书时记录购买时间、地点、开始阅读的时间、第一次看完的时间,算是一种学习的记录。过去的2016年一共阅读过15本技术书,下面对这些书做一个小结。 《深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)》 这本书是2013年购买的,2016年是第三次阅读,每次看完的收获都不一样。这本书系统的讲解了Java虚拟机的工作机制和底层原理,用通俗的语言和案例围绕内存管理机制、虚拟机执行子系统、程序编译与代码优化、高效并发四个部分对JVM进行了全而深入的讲解。
JavaQ
2018/04/04
7960
我的2016年书单
给Java程序猿们推荐一些值得一看的好书
很多程序员们往往有看书的冲动,但不知道看哪些书,下面我就给各位Java程序猿们推荐一些好书(每本书的作者会加粗标红),其中绝大多数都是我自己平时在看的书,也算是我对于平时读的书做一个小总结和读后感吧。
三哥
2018/06/27
3970
2022年golang最近学习书单推荐
Go是谷歌公司为了解决重大问题而设计的一种小型编程语言。完成大型项目需要大型团队,而大型团队中团队成员的经验水平往往各不相同。
后端时光
2022/08/19
1.2K0
2022年golang最近学习书单推荐
敖丙力荐的书单(含技术和非技术)
记得帅丙在自己21岁的那个夏天,当时拿到了自己的第一笔实习工资1400块,因为是110块一天嘛,而且入职的第一个月也没上满,但是还是很开心,第一个月师傅就给了一个建议,买本书吧。
敖丙
2020/06/19
1.5K0
敖丙力荐的书单(含技术和非技术)
书单丨24岁的Java,到底有多美?
本书源于影响了全球250万名开发工程师的《阿里巴巴Java开发手册》,作者静心沉淀,对Java规约的来龙去脉进行了全面而彻底的内容梳理。
博文视点Broadview
2020/06/10
3810
书单丨24岁的Java,到底有多美?
还搞不定Java多线程和并发编程面试题?你可能需要这一份书单!
在介绍本书单之前,我想先问一下各位读者,你们之前对于Java并发编程的了解有多少呢。经过了10多年的发展,Java Web从开发框架到社区都已经非常成熟,很多程序员都可以通过使用框架很快速地搭建起一个Java Web应用,特别是近几年SpringBoot大热,干脆连配置都不需要了解了,直接一键式编译部署运行,让Java工程师的入门成本变得越来越低。
程序员书单
2020/05/18
1.1K0
敖丙女朋友都不陪,也要给你分享的书单
大家老是让我推荐书单,我就安排一波吧,我不会全部推荐技术书籍,因为我觉得收获最大的反而是我看的一些非技术书籍。
敖丙
2020/05/26
5970
推荐阅读
相关推荐
Java书单——由入门到上天
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档