Java學習必備書籍推薦終極版!

Guide哥發表於2019-04-05

很早就想把JavaGuide的書單更新一下了,昨晚加今天早上花了幾個時間對之前的書單進行了分類和補充完善。雖是終極版,但一定還有很多不錯的 Java 書籍我沒有新增進去,會繼續完善下去。希望這篇文章對你有幫助,不要再無書可看。

歡迎在留言區補充你覺得不錯的 Java 方向的書籍或者計算機基礎必看的書籍!你也可以直接到Github給我提PR,參與這個書單的完善。

Java

基礎

  • 《Head First Java》(推薦,豆瓣評分 8.7,1.0K+人評價): 可以說是我的 Java 啟蒙書籍了,特別適合新手讀當然也適合我們用來溫故 Java 知識點。
  • 《Java 核心技術卷 1+卷 2》(推薦): 很棒的兩本書,建議有點 Java 基礎之後再讀,介紹的還是比較深入的,非常推薦。這兩本書我一般也會用來鞏固知識點,是兩本適合放在自己身邊的好書。
  • 《JAVA 網路程式設計 第 4 版》: 可以系統的學習一下網路的一些概念以及網路程式設計在 Java 中的使用。
  • 《Java 程式設計思想 (第 4 版)》(推薦,豆瓣評分 9.1,3.2K+人評價):大部分人稱之為Java領域的聖經,但我不推薦初學者閱讀,有點勸退的味道。稍微有點基礎後閱讀更好。

併發

JVM

Java8 新特性

  • 《Java 8 實戰》 (推薦,豆瓣評分 9.2 ):面向 Java 8 的技能升級,包括 Lambdas、流和函數語言程式設計特性。實戰系列的一貫風格讓自己快速上手應用起來。Java 8 支援的 Lambda 是精簡表達在語法上提供的支援。Java 8 提供了 Stream,學習和使用可以建立流式程式設計的認知。
  • 《Java 8 程式設計參考官方教程》 (推薦,豆瓣評分 9.2):也還不錯吧。

程式碼優化

  • 《重構_改善既有程式碼的設計》(推薦):豆瓣 9.1 分,重構書籍的開山鼻祖。
  • 《Effective java 》(推薦,豆瓣評分 9.0,1.4K+人評價):本書介紹了在 Java 程式設計中 78 條極具實用價值的經驗規則,這些經驗規則涵蓋了大多數開發人員每天所面臨的問題的解決方案。通過對 Java 平臺設計專家所使用的技術的全面描述,揭示了應該做什麼,不應該做什麼才能產生清晰、健壯和高效的程式碼。本書中的每條規則都以簡短、獨立的小文章形式出現,並通過例子程式碼加以進一步說明。本書內容全面,結構清晰,講解詳細。可作為技術人員的參考用書。
  • 《程式碼整潔之道》(推薦,豆瓣評分 9.1):雖然是用 Java 語言作為例子,全篇都是在闡述 Java 物件導向的思想,但是其中大部分內容其它語言也能應用到。
  • 阿里巴巴 Java 開發手冊(詳盡版) github.com/alibaba/p3c…
  • Google Java 程式設計風格指南: www.hawstein.com/posts/googl…

網路

  • 《圖解 HTTP》(推薦,豆瓣評分 8.1 , 1.6K+人評價): 講漫畫一樣的講 HTTP,很有意思,不會覺得枯燥,大概也涵蓋也 HTTP 常見的知識點。因為篇幅問題,內容可能不太全面。不過,如果不是專門做網路方向研究的小夥伴想研究 HTTP 相關知識的話,讀這本書的話應該來說就差不多了。
  • 《HTTP 權威指南》 (推薦,豆瓣評分 8.6):如果要全面瞭解 HTTP 非此書不可!

作業系統

  • 《鳥哥的 Linux 私房菜》(推薦,,豆瓣評分 9.1,0.3K+人評價):本書是最具知名度的 Linux 入門書《鳥哥的 Linux 私房菜基礎學習篇》的最新版,全面而詳細地介紹了 Linux 作業系統。全書分為 5 個部分:第一部分著重說明 Linux 的起源及功能,如何規劃和安裝 Linux 主機;第二部分介紹 Linux 的檔案系統、檔案、目錄與磁碟的管理;第三部分介紹文字模式介面 shell 和管理系統的好幫手 shell 指令碼,另外還介紹了文字編輯器 vi 和 vim 的使用方法;第四部分介紹了對於系統安全非常重要的 Linux 賬號的管理,以及主機系統與程式的管理,如檢視程式、任務分配和作業管理;第五部分介紹了系統管理員 (root) 的管理事項,如瞭解系統執行狀況、系統服務,針對登入檔案進行解析,對系統進行備份以及核心的管理等。

資料結構與演算法

  • 《大話資料結構》(推薦,豆瓣評分 7.9 , 1K+人評價):入門型別的書籍,讀起來比較淺顯易懂,適合沒有資料結構基礎或者說資料結構沒學好的小夥伴用來入門資料結構。
  • 《資料結構與演算法分析:C 語言描述》(推薦,豆瓣評分 8.9,1.6K+人評價):本書是《Data Structures and Algorithm Analysis in C》一書第 2 版的簡體中譯本。原書曾被評為 20 世紀頂尖的 30 部計算機著作之一,作者 Mark Allen Weiss 在資料結構和演算法分析方面卓有建樹,他的資料結構和演算法分析的著作尤其暢銷,並受到廣泛好評.已被世界 500 餘所大學用作教材。
  • 《演算法圖解》(推薦,豆瓣評分 8.4,0.6K+人評價):入門型別的書籍,讀起來比較淺顯易懂,適合沒有演算法基礎或者說演算法沒學好的小夥伴用來入門。示例豐富,圖文並茂,以讓人容易理解的方式闡釋了演算法.讀起來比較快,內容不枯燥!
  • 《演算法 第四版》(推薦,豆瓣評分 9.3,0.4K+人評價):Java 語言描述,演算法領域經典的參考書,全面介紹了關於演算法和資料結構的必備知識,並特別針對排序、搜尋、圖處理和字串處理進行了論述。書的內容非常多,可以說是 Java 程式設計師的必備書籍之一了。

資料庫

  • 《高效能 MySQL》(推薦,豆瓣評分 9.3,0.4K+人評價):mysql 領域的經典之作,擁有廣泛的影響力。不但適合資料庫管理員(dba)閱讀,也適合開發人員參考學習。不管是資料庫新手還是專家,相信都能從本書有所收穫。
  • 《Redis 實戰》:如果你想了解 Redis 的一些概念性知識的話,這本書真的非常不錯。
  • 《Redis 設計與實現》(推薦,豆瓣評分 8.5,0.5K+人評價):也還行吧!
  • 《MySQL 技術內幕-InnoDB 儲存引擎》(推薦,豆瓣評分 8.7):瞭解 InnoDB 儲存引擎底層原理必備的一本書,比較深入。

系統設計

設計模式

常用框架

  • 《深入分析 Java Web 技術內幕》: 感覺還行,涉及的東西也蠻多。
  • 《Netty 實戰》(推薦,豆瓣評分 7.8,92 人評價):內容很細,如果想學 Netty 的話,推薦閱讀這本書!
  • 《從 Paxos 到 Zookeeper》(推薦,豆瓣評分 7.8,0.3K 人評價):簡要介紹幾種典型的分散式一致性協議,以及解決分散式一致性問題的思路,其中重點講解了 Paxos 和 ZAB 協議。同時,本書深入介紹了分散式一致性問題的工業解決方案——ZooKeeper,並著重向讀者展示這一分散式協調框架的使用方法、內部實現及運維技巧,旨在幫助讀者全面瞭解 ZooKeeper,並更好地使用和運維 ZooKeeper。
  • 《Spring 實戰(第 4 版)》(推薦,豆瓣評分 8.3,0.3K+人評價):不建議當做入門書籍讀,入門的話可以找點國人的書或者視訊看。這本定位就相當於是關於 Spring 的新華字典,只有一些基本概念的介紹和示例,涵蓋了 Spring 的各個方面,但都不夠深入。就像作者在最後一頁寫的那樣:“學習 Spring,這才剛剛開始”。
  • 《RabbitMQ 實戰指南》:《RabbitMQ 實戰指南》從訊息中介軟體的概念和 RabbitMQ 的歷史切入,主要闡述 RabbitMQ 的安裝、使用、配置、管理、運維、原理、擴充套件等方面的細節。如果你想淺嘗 RabbitMQ 的使用,這本書是你最好的選擇;如果你想深入 RabbitMQ 的原理,這本書也是你最好的選擇;總之,如果你想玩轉 RabbitMQ,這本書一定是最值得看的書之一
  • 《Spring Cloud 微服務實戰》:從時下流行的微服務架構概念出發,詳細介紹了 Spring Cloud 針對微服務架構中幾大核心要素的解決方案和基礎元件。對於各個元件的介紹,《Spring Cloud 微服務實戰》主要以示例與原始碼結合的方式來幫助讀者更好地理解這些元件的使用方法以及執行原理。同時,在介紹的過程中,還包含了作者在實踐中所遇到的一些問題和解決思路,可供讀者在實踐中作為參考。
  • 《第一本 Docker 書》:Docker 入門書籍!

網站架構

  • 《大型網站技術架構:核心原理與案例分析+李智慧》(推薦):這本書我讀過,基本不需要你有什麼基礎啊~讀起來特別輕鬆,但是卻可以學到很多東西,非常推薦了。另外我寫過這本書的思維導圖,關注我的微信公眾號:“Java 面試通關手冊”回覆“大型網站技術架構”即可領取思維導圖。
  • 《億級流量網站架構核心技術》(推薦):一書總結並梳理了億級流量網站高可用和高併發原則,通過例項詳細介紹瞭如何落地這些原則。本書分為四部分:概述、高可用原則、高併發原則、案例實戰。從負載均衡、限流、降級、隔離、超時與重試、回滾機制、壓測與預案、快取、池化、非同步化、擴容、佇列等多方面詳細介紹了億級流量網站的架構核心技術,讓讀者看後能快速運用到實踐專案中。

軟體底層

  • 《深入剖析 Tomcat》(推薦,豆瓣評分 8.4,0.2K+人評價):本書深入剖析 Tomcat 4 和 Tomcat 5 中的每個元件,並揭示其內部工作原理。通過學習本書,你將可以自行開發 Tomcat 元件,或者擴充套件已有的元件。 讀完這本書,基本可以擺脫背誦面試題的尷尬。
  • 《深入理解 Nginx(第 2 版)》:作者講的非常細緻,註釋都寫的都很工整,對於 Nginx 的開發人員非常有幫助。優點是細緻,缺點是過於細緻,到處都是程式碼片段,缺少一些抽象。

其他

  • 《黑客與畫家》:這本書是矽谷創業之父,Y Combinator 創始人 Paul Graham 的文集。之所以叫這個名字,是因為作者認為黑客(並非負面的那個意思)與畫家有著極大的相似性,他們都是在創造,而不是完成某個任務。

公眾號

相關文章