如何学习Java?推荐13本自学Java经典书目(建议收藏)
有一位刚毕业,零基础,想学Java的朋友问我:学习Java看什么书比较好?
想来应该有不少朋友会有相同的疑问,因此我列了13本Java的经典书目,包含不同的方向和需求,供大家参考。希望能帮到正在学习Java的朋友们。
以下是书目清单:
- 作者:Bruce Eckel
- 豆瓣评分:9.0 ★★★★
Bruce Eckel的java书可谓是JAVA的圣经,不论你在什么阶段阅读,都能从这本书里获取到你所想要的收获。这本书内容广博,涵盖了Java开发中很多不常被提及的概念,从基础知识到高级特性,帮助你全面掌握Java知识。
- 作者:Cay S. Horstmann
- 豆瓣评分:9.9 ★★★★★
本书曾获得有“软件业奥斯卡”之称的Jolt奖,内容详实而细腻,是对学习Java很有帮助的两部书。上下两卷,分别详细介绍了Java的基础知识和高级特性。是很多学习Java的小伙伴必备的书籍。
- 作者:Joshua Bloch
- 豆瓣评分:8.8 ★★★★
本书中囊括了大量极具实用价值的经验规则,涵盖了许多开发人员每天面临问题的解决方案。本书可以作为其它Java书籍很好的一个内容补充。
- 作者:周志明
- 豆瓣评分:9.4 ★★★★
这本书是由国人大佬周志明编纂的。把JVM详尽地剖析给读者,已经成为Java虚拟机实践中经典的经典。其中提到的很多知识点以及概念,都成为了IT公司的常见面试题,是每个想要从事Java的同学必须要阅读的书目。
- 作者:Kathy Sierra,Bert Bates
- 豆瓣评分:8.6 ★★★★
这本书是很多Java同行的启蒙书,虽然版本有点过时,但里面的概念和编程思维却是历久弥新。
- 作者:Brian Goetz
- 豆瓣评分:9.0 ★★★★
对于Java多线程的概念,如果要推荐一本书把相关知识全部涉猎和讲透的,那就应该是这本了。本书胜在代码案例较多,即便有些知识点晦涩难懂,但配合代码实操一下,就会变得很容易理解。
- 作者:Baron Schwartz, Peter Zaitsev, Vadim Tkachenko
- 豆瓣评分:9.3 ★★★★
涉及到数据库和底层通用技术的推荐书目,就首推《高性能MySQL》这本书了。本书是MySQL领域的巅峰之作,读者众多,影响力广泛,是很多开发人员的参考用书。
- 作者:李刚
- 豆瓣评分:8.1 ★★★
这是一本很好的新手入门材料,归纳了普遍通用的Java语言和技术。基于实际编程经验,利用类比和案例讲解知识点,利用口诀帮助记忆,降低学习难度,对初学者十分友好。
- 作者:Norman Maurer
- 豆瓣评分:7.6 ★★★
了解和学习Netty框架对Java工程师十分重要,自学Netty的话,推荐本书。
- 作者:Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, 李英军, 马晓星, 蔡敏, 刘建中
- 豆瓣评分:9.0 ★★★★
程序员始终在和耦合性做斗争。如何才能设计出高可复用的软件程序,可以从本书中找到一些思路。本书是设计模式的经典,读者能从本书中找到很多解决实际问题的思路和方法。
- 作者:方腾飞, 魏鹏, 程晓明
- 豆瓣评分:7.5 ★★
本书从java并发编程的理论入手,逐步介绍和讲解Java设计时的重要原则和普遍设计模式。
- 作者:Ben Forta
- 豆瓣评分:9.1 ★★★★
书如其名,本书介绍的都是关系型数据库从业者“必须知道必须掌握”的知识和技巧。本书内容浅显易懂,行书结构十分合理,内容循序渐进,适合初学者和入门者学习。
- 作者:曾宪杰
- 豆瓣评分:8.0 ★★★
本书虽然细节不多,但如果具备一定中间件开发经验,就能收获很多理解和启发。本书内容不多,主要是一些总结性的思路,虽然点到为止,但不得不说干货满满。
以上这13本书都是Java的经典书目,值得一学。
当然,老K并不推荐所有的书都买,还是要从自己当下的实际情况和需求出发,挑选1-2本最符合的书先读起来,边读、边学、边解决疑惑。发现新的问题和学习方向,且当下的书目无法再满足需求时,再读下一本。
码字不易,不要光收藏啦!也点个赞吧!!!
以下是老K之前分享的一些关于Java学习的文章,有兴趣的小伙伴可以点击链接阅读。
我是,专注于编程开发的经验总结和项目分享,对编程有兴趣的可以关注我或留言与我交流。
Java 程序员必须阅读的 10 本经典 Java 书籍
一些针对 Java 程序员的最佳书籍,从核心 Java 到最佳实践,从单元测试到 Spring 框架。
如果您是一名 Java 程序员,并且想知道读什么书来提高您的 Java 知识或成为一名更好的Java 开发人员,那么您来对地方了。
在本文中,我将分享一些有史以来最好的 Java 书籍。这些书经受住了时间的考验,随着岁月的流逝变得越来越重要。你总会有很多东西要学,这就是为什么我认为它们是有史以来最伟大的 Java 书籍。
当我成为一名程序员时,我对书籍的热情仍在继续。除了大学课本之外,我阅读的第一本 Java 书籍是Head First Design Pattern。这本书彻底改变了我对Java的认识和对面向对象编程的理解。
直到那时,我才明白接口的真正用途。对我来说,它们看起来毫无用处,因为你不能在那里编写代码来做任何事情。但是,读完这本书后,我意识到它们在减少程序不同部分之间的耦合方面的作用是多么的棒。
从那时起,我已经阅读了许多编程书籍,主要与 Java 相关。今天,我将分享每个 Java 开发人员都应该阅读的10部最佳 Java书籍。即使有些知识已经过时,你学到的大部分东西都将有助于你终生的职业生涯。
事不宜迟,这里是我列出的一些对 Java 程序员来说最流行和最重要的书籍。
如果您从事 Java 编程 2 到 3 年,那么您很有可能已经阅读过这些书籍。但是,如果您还没有,那么现在是阅读它们的最佳时机。
我 100%确信您不会后悔在这些书上投入时间和金钱,因为您将学到的东西比未来几年更有价值。
这里不应该有任何惊讶。 Effective Java 是Joshua Bloch有史以来最好的 Java书籍。对于任何经验水平的 Java 程序员来说,这绝对是一本必读的书。您将学到很多关于 Java 及其 API 的知识,超出您的想象。
Joshua Bloch本人是几个关键的Java类和API的作者,像java.lang和Java集合框架,所以是足够的理由来读这本书的。除此之外,他的写作风格也很棒。
您可以在海滩上、旅行时或就在办公桌前阅读这本书。这很棒。毫无疑问,读完这本书,你会成为更好的 Java 程序员。
最棒的是,Effective Java的新版本现已推出,涵盖 Java 7、8 和 9。现在是阅读本书的最佳时机。
Java 程序员的另一个永恒经典是Clean Code。正如标题所暗示的,它教你编写更好的代码,这是一件很难学的事情。
老实说,学习 Java 很容易,但很难编写使用强大的OOP原则的更好的Java代码,而这正是本书提供帮助的地方。
与 Joshua Bloch 类似,Robert C. Martin,也被称为 Uncle Bob,是一位优秀的作家,他分享了他作为软件开发人员的许多经验,教您各种编程技术和实践,这些技术和实践对您的日常工作有很大帮助。
多线程和并发是Java 编程的重要组成部分。没有比Brian Goetz 的Java Concurrency in Practice更好的书来学习和掌握这个棘手的话题了。
尽管这本书只涵盖了Java 5,但对于任何认真的 Java 开发人员来说,它仍然是相关的和必读的书籍。
良好的OOP和设计模式知识对于编写任何Java应用程序都很重要。Head First Design Patterns是学习这样做的最佳书籍。
正如我之前所说,这是我读过的第一本关于Java的书籍,除了教科书。读完这本书,我印象非常深刻。
这本书教会了我为什么组合比继承更好,以及如何在不触及已经尝试和测试过的代码的情况下更改类的运行时行为。
您可能认为这只是另一本旧书,但您不必担心,涵盖Java SE 8的更新副本已于几年前发布。
如果您认真学习 Java中的设计模式,那么这本书是您应该阅读的。
Pluralsight上的设计模式库课程也是一个很好的资源,可以让您熟悉Java和面向对象编程中的基本设计模式。你可以跟着本书一起学习这门课程,以获得两全其美的效果。
抱歉,我必须在这个 Java 程序员经典书籍列表中包含一本 Spring 书籍,Spring in Action。Spring 是有史以来最流行的 Java 框架,这是了解 Spring 框架的最佳书籍,老实说这本书不仅仅是一本 Spring 书籍。
读完本书的第4版后,我对 Java 有了很多了解,并且写出了更好的代码。
这些书都采用了主题的方式编写,例如 JDBC,并解释了 JDK 哪里出了问题以及 Spring 如何纠正该错误,例如 SQLException,这是一个千篇一律的异常,它说明有问题,但不止是什么问题或如何处理。
与 Josuha Bloch and Uncle Bob一样,Craig Walls 也是另一位伟大的作家,通过阅读本书,您将学到的不仅仅是 Spring。
好消息是,现在第5 版 Spring in Action也已上市,这是我阅读清单中的一本。
自动化测试是一项重要的技能。对于开发人员来说,这一切都始于单元测试。Java 从一开始就很幸运拥有 JUnit,但仅仅了解该库并不能使您成为可以编写测试的专业程序员。
它需要的不仅仅是了解一个单元测试库,比如JUnit或Mockito,而这正是本书提供帮助的地方。如果您对代码质量和编写单元、集成和自动化测试很认真,那么Test Driven是 2018年值得阅读的
如果我们谈论库,JUnit 和Mockito是任何 Java 开发人员必备的。如果您不熟悉它们,我建议您与上述书籍一起阅读这本JUnit 和 Mockito 速成课程,以掌握 Java 单元测试的艺术。
成为更好的 Java开发人员的另一个方面是了解 JVM、垃圾收集和性能调优。
坊间有关于这一主题的几个好书,例如Java Performance的Binu John and Charlie Hunt,由Scott Oaks编写的The Definitive Guide of Java Performance是我的最爱。
尽管它只涵盖 JDK 7,但您将学到很多关于性能调优和JVM的知识,这完全证明了您在本书上花费的时间和金钱是合理的。
有多少人是通过阅读本书开始学习 Java 的?嗯,我做到了。就在我了解了Head First Design Pattern之后,我还找到了这本书Head First Java,我真的很喜欢读它。我学到了很多Java概念,我的许多误解也得到了纠正。
尽管许多人认为这是一本过时的书,但我仍然认为它对于刚开始接触 Java 的人来说是一本很棒的书,因为它具有独特的风格和内容。
通过阅读本书了解 Java 后,您可以轻松了解Java 8、Java 9和Java 10和其他版本。
这是最伟大的 Java 书籍列表中的另一本“Head First”书籍。是的,他们简直太棒了。
Head First Object-Oriented Analysis and Design构成了面向 Java 程序员的“Head First”书籍的三部曲,即Head First Java、 Head First Design Patterns和Head First OOAD。
它实际上通过解释面向对象的编程和设计技术来补充Head First Design Patterns。
我从这本书中学到的最重要的技术是为接口编码以及如何封装变化。这本书改变了我编写 Java 代码的方式。
如果您需要一本全面的 Java 书籍,这应该是它。尽管书名是Java: A Beginner\’s Guide,但它是学习 Java最全面的书籍之一。
Herbert Schildt 先生在保持本书更新方面也做了值得称道的工作,例如本书的第 7 版现在涵盖了 Java 9。
顺便说一句,他们已经发布了一个补充内容来涵盖JDK 10的新特性。我认为这将是前进的方向。
这些是 Java 程序员最好的书籍。如果您是一位热情的 Java 程序员,那么您很有可能已经阅读了这些书籍的大部分内容。
但是,如果你还没有,那么今年可能正是阅读这些书的好时机。他们绝对很棒。您可以尽可能选择本书的最新版本,例如Effective Java 3rd Edition或 The 7th Edition of Java: A Beginner\’s Guide。
结语
谢谢您,读到了文章的结尾……祝您的 Java 编程越来越享受。这当然不会很容易,但是通过阅读这些书籍,您将获得一些有用的经验。
如果您喜欢这篇文章,请与您的朋友和同事分享,不要忘记点赞关注公众号,带给你更多优质Java和大数据知识!!!
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。