Java

Java 不是个好语言,但应该是目前被最广泛使用的后端语言。如果你不知道要学什么,学 Java 肯定没问题,因为它目前几乎可以解决一切问题。

另外,Java 领域不用对图书使用的 Java 版本太过苛刻,只要讲到 Java 8 就足够了,这主要是因为 Java 在之后的版本里其实变化不太大,甚至你可以花半天时间通过网上的各种博客搞清楚 Java 9 到 Java 17 更新了点什么……

  • Java 核心技术·卷 Ⅰ(第 11 版):中文版正文 633 页,英文原版出版于 2019 年,黑白印刷。应该目前最好的 Java 入门书籍,最新版已更新至 Java 11。需要注意的是还有一本卷 Ⅱ 不必购买,大多数人用不上。本书使用 Java 11。翻译一般。英文版第 12 版已出,可以在这里看。但实话说,Java 11 已经够新了,没必要去读第 12 版。

  • Java 编程思想(第 4 版):中文版正文 855 页,英文原版出版于 2006 年,黑白印刷。曾经作为最推荐的 Java 入门书籍,但目前其中很多内容已经比较过时了,虽然 Java 这些年变化不大,但这本书还停留在 Java 5 真的太古典了,已经不推荐入门读这本了……书整体深度和广度都超出上面一本,自然阅读难度也更高,但是对理解 Java 原理与面向对象思想确实非常有帮助,因此即使过去了这么久这本书还是比较推荐。翻译一般。

  • On Java:分上下册,中文版全文 808+535 共 1343 页,英文原版出版于 2017 年,黑白印刷。考虑到本书作者应图灵社区邀请对书的内容进行了更新,已经更新至 Java 17,因此其实认为它原版出版于 2017 年并不妥当,可以认为英文原版是 2021 年出版的。本书和上面那本一样也是 Bruce Eckel 写的,可以认为是《Java 编程思想(第 5 版)》。这本书 2022 年 3 月刚刚出版,已经可以买到,目前来说相比于 Java 编程思想更推荐读这本,因为这本更新。翻译不错。

  • 深入理解 Java 虚拟机(第 3 版):正文 485 页,原版出版于 2019 年。深入 JVM 实现原理,是比较推荐的 Java 进阶读物。书很新,讲得非常好,周志明的书属于国人计算机类图书中最顶尖的那一批,非常难得,建议每个学 Java 的人都读一读。

此外,大多数人学 Java 的目的可能就是单纯去做后端,关于这方面的参考书可以在**9.13 节“后端”**中找到,那里会有 Spring 相关的参考书。

另外,Java 是一个很大的生态,除了 Java 以外还有一些语言可以跑在 Java 虚拟机(JVM)上,例如 Kotlin、Scala、Groovy、Clojure 等。这些语言语法与 Java 不同,但由于直接跑在 JVM 上,所以 Java 的很多库是可以用这些语言直接调用的,可以将它们理解成 Java 的某种“方言”。其中,Kotlin 应当是目前最值得学习的(当然学之前肯定得把 Java 学好),因其语法与 Java 相似,兼容性非常好,而且已经在安卓开发领域被广泛应用,如果爱折腾甚至可以拿来写 Spring。此外,Scala 虽然还未被广泛应用,但社区生态很繁荣,有倾入各种领域的趋势,并且是函数式语言,如果功利心不强的话可以学一下,有些好处。至于 Groovy 和 Clojure 或是其他更冷门的 JVM 方言就没必要学了,因为几乎已经没人用了,并且还在继续衰落。

最后更新于