1. 程式人生 > >2018 年 Java 程式設計師必讀的十本書

2018 年 Java 程式設計師必讀的十本書

大家好,如果你是一名 Java 程式設計師,正在考慮 2018 年讀什麼書,那麼這篇文章正適合你。本文中,我將分享 10 本有關 Java、Spring 及其他相關技術的書籍。 這裡面既有適合經驗豐富的 Java 程式設計師的書,它們介紹了架構、雲開發、微服務、Java 9、Spring 5,以及用於提高生產效率的 Kotlin。同時也照顧到了初級的、缺乏經驗的、或正打算 2018 年開始入門 Java 的新手。

同時,我也介紹了一些在 2018 年學習 Java 9 的書籍。有些已經針對 Java SE 9 全面更新,比如 《寫給大忙人看的Java SE 9》和 《Java 9 程式設計入門官方教程》。

如果你剛開始學習 Java 或者正打算要學,這些書都非常適合。不推薦讀舊版本的書來入門,除非是《Head First Java》。

我特別希望《Head First Java》的第三版是一個長期的版本,作者和出版方最好針對 Java 8 和 Java 9 進行全面更新。不過對於入門 Java 的程式設計小白來說,舊版本的《Head First Java》仍然是一本好書。

我最近新增到這個書單的就是這本今天剛發現的《雲原生 Java》。這本書看起來特別棒,它介紹了目前急需的,利用 Spring Boot、Spring Cloud 和 Cloud Foundry 在雲上開發 Java 應用的知識。雖然還沒讀完,但它看起來特別棒。

2018 年可以用來提升 Java 知識技能的書太多了,你不可能把他們都讀完。不過有些書你絕對不想錯過,比如《Effective Java(第三版)》,我把它放在了書單的最上面。

書單裡的書介紹了 Java 9、Spring 5、Kotlin、軟體架構、微服務、雲以及 Java 8 的一些特性。

這個書單不是很長,但裡面的書都很棒,都挺適合在上下班路上讀。

1. 《Effective Java(第三版)》(Effective Java 3rd Edition)

如果你還沒讀過這本書,那它絕對是 2018 年你必須讀的第一本書。第三版是一個長期版本,其實它早就該出版了。這版書也囊括了 JDK 7、8、9 的新特性。

我在 1 月份的第一個星期就拿到了這本書,它絕對是約書亞·布洛克(Joshua Bloch)給 Java 程式設計師最好的新年禮物。

我花了大概一個星期就讀完了這本書。我發現讀的過程中,時常碰到新的知識點,特別是關於 Java 8 和 Java 9 的。

我從這本書中學到了 Java 的模組化,它也幫我理順了之前對於 Java 8 的一些誤解。

effective java

2. 《現代 Java 開發範例》(Modern Java Recipes)

如果你喜歡範例型別的書,那這本書就很不錯。就像簡介裡提到的,這本書提供瞭解決 Java 8 和 Java 9 中一些難題的簡單方案。

你會學到如何使用 Java 8 的 lambda 表示式、方法引用以及 Stream API 寫程式碼。

如果你想通過手冊和範例來學習 Java 8 和 Java 9 ,這本書就很完美。

modern java recipes

3. 《Java 9 模組化》(Java 9 Modularity)

Java 9 的一個亮點就是 Java 的模組化,本書對這部分做了最全面的介紹。

作者桑德斯·馬克(Sanders Mak)是 Java 9 模組化的權威。我聽過很多他講 Java 9 的課程,比如在 Pluarlsight 做的《Java 9 模組化及新特性》。我可以保證,讀完此書之後,你絕不會後悔。

java 9 modularity

4. 《寫給大忙人看的Java SE 9(第二版)》 (Core Java SE 9 for the Impatient (2nd Edition))

如果你急著學 Java 那我推薦這本書給你。我是凱 S·霍斯特曼 (Cay S. Horstmann)的一個忠實粉絲,他的文采之優美、涉獵之廣,都讓我很是佩服。

你讀了他寫的關於 Java 8、Scala 的書以及《Java 核心程式設計》之後,絕對也會成為他的粉絲。

這本書已經針對 Java SE 9 全面更新。如果你想學習 Java 9,那2018年你應該先讀讀這本書。

core java se 9 for the impatient

5. 《Java 8入門》(Beginning Java 8 Language Features)

儘管已經發布快 4 年了,仍然有很多 Java 程式設計師還沒有開始使用 Java 8。

如果你是這些人的一員,或者還不是很理解 lambda 表示式、Stream API、Optional 及 Java 8 其他的特性,那你一定要讀這本書。

這是一個系列,共有3卷,此卷通俗易懂的講解了 Java 8 的基礎知識。

另外兩卷則延伸到 Java 8 的高階特性,比如 JDBC、Swing、 Java FX,以及 Java 網路 API。

java 8 language feature

6. 《Spring 微服務實戰》(Spring Microservices in Action)

軟體開發世界正在加速轉向微服務架構,它在開發、維護、部署、擴容性及可靠性等方面有很多優勢。

感謝 Spring framework 提供這麼多開發微服務的 Java 工具,比如 Spring Boot 和 Spring Cloud。

如果你對用 Spring framework 開發微服務有興趣,那麼這本書很適合你。

Spring microservices in action

7. 《架構整潔之道》(Clean Architecture)

我是在2017年讀的這本書,特別喜歡。我是羅伯特 C·馬丁(Robert C. Martin)的一個忠實粉絲(大家稱之為“ Bob 大叔”)。加上之前的《程式碼整潔之道(Clean Code)》和《程式碼整潔之道 程式設計師的職業素養(Clean Coder book)》,這本書完成了程式碼整潔之道三部曲。

它介紹瞭如何構建可以經受時間考驗的軟體架構,還消除了對設計模式和軟體架構的一些誤解。

如果你是一名經驗豐富的 Java 程式設計師,正想轉變為一個方案設計師,那這本書2018年你一定要讀完。

clean architecture

8. 《Spring 5 開發範例程式碼大全》(Spring 5 Recipes: A Problem-Solution Approach)

拋開 JDK 9 不談,2017年另外一個大的版本更新就是 Spring 5 ,它將響應式程式設計引入了 Spring 。

既然對 Java 程式設計師來說, Spring 是無可爭議的、最流行的架構,那麼學習 Spring 5 讓自己緊跟技術潮流,是非常值得的。

我個人非常喜歡目標導向的範例類圖書,這也是我為什麼選擇了這本書用來學習 Spring 5。

它不僅覆蓋了 Spring 5 的新特性,也講了其他早期版本的增強。一句話,它教你如何在 Spring 5 的環境下寫程式碼。

Spring 5 Recipes

9. 《Kotlin 實戰》(Kotlin in Action)

Java 程式設計師通過學習 Scala、Groovy、Closure 等 JVM 語言來成為一名多語言的開發者是很常見的。而 Kotlin 正是當下的熱門。

自從 2017 年 Google 在 Google IO 上宣佈將 Kotlin 作為 Android 的官方語言之後,很多人都開始對學習 Kotlin 感興趣。

更重要的是,它能提高你的生產效率,而且它和 Java 非常相似。因此,如果你想在 2018 年學習一種 JVM 語言,我建議學習 Kotlin。

kotlin in action

10. 《Java 9 程式設計入門官方教程(第七版)》(Java: A Beginner’s Guide, Seventh Edition)

這是另一本從零開始學習 Java 的經典書籍。第七版已經針對 Java SE 9 全面更新。

如果你想在 2018 年開始你的 Java 程式設計師生涯,這本書可以幫你學到最新版本的 Java。

這本書比書單裡的第二本更全面。

java a beginner

11. 《雲原生 Java》(Cloud Native Java)

恭喜讀到這裡的朋友,你們收穫了一個彩蛋 ——《雲原生 Java》,2018 年最有用的 Java 書籍。

當今的軟體開發,大都是關於雲、微服務、分散式架構等等。喬氏·隆(Josh Long)和肯尼·巴斯塔尼(Kenny Bastani)在這本書裡向 Java/JVM 開發者展示瞭如何使用 Spring Boot、Spring Cloud 和 Cloud Foundry 構建更好、更快的 Java 應用程式。

對於經驗豐富的 Java 開發者來說,它絕對是一本必讀書。儘管它介紹了相對高階的內容,我還是強烈推薦每一位 Java 程式設計師都讀一下。

實際上,我還沒有讀完這本書。但是讀完前言之後,我就對所討論的話題非常感興趣。我可能在讀完之後再寫一篇詳細的文章。但它絕對值得各位至少讀一遍。

cloud native java

這就是 2018 年 Java 程式設計師可以讀的一些有趣、有用的書籍。實話實說,即使是讓自己緊跟 Java 世界的技術潮流,比如 Java 9、Sprig 5、微服務、Kotlin 等,也還有一大堆東西等著你去學習。這些書不僅僅更新你的知識,還能讓你對一些技術的理解更加深刻。

多謝閱讀。如果你喜歡這些書,就把它們分享給你的朋友和同學吧。如果有任何建議,或有書籍想在2018年分享給大家,歡迎留言。