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

2021-02-23 漫話編程

Java

基礎

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

並發

《Java 並發編程之美》[5] (推薦):2018 年 10 月出版的一本書,個人感覺非常不錯,對每個知識點的講解都很棒。•《Java 並發編程的藝術》[6](推薦,豆瓣評分 7.2,0.2K+人評價):這本書不是很適合作為 Java 並發入門書籍,需要具備一定的 JVM 基礎。我感覺有些東西講的還是挺深入的,推薦閱讀。•《實戰 Java 高並發程序設計》[7](推薦,豆瓣評分 8.3):書的質量沒的說,推薦大家好好看一下。•《Java 高並發編程詳解》[8](豆瓣評分 7.6):2018 年 6 月出版的一本書,內容很詳細,但可能又有點過於囉嗦,不過這只是我的感覺。

JVM

•《深入理解 Java 虛擬機(第 2 版)周志明》[9](推薦,豆瓣評分 8.9,1.0K+人評價):建議多刷幾遍,書中的所有知識點可以通過 JAVA 運行時區域和 JAVA 的內存模型與線程兩個大模塊羅列完全。•《實戰 JAVA 虛擬機》[10](推薦,豆瓣評分 8.0,1.0K+人評價):作為入門的了解 Java 虛擬機的知識還是不錯的。

Java8 新特性

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

代碼優化

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

網絡

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

作業系統

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

數據結構與算法

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

資料庫

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

系統設計設計模式

•《設計模式 : 可復用面向對象軟體的基礎》 [29] (推薦,豆瓣評分 9.1):設計模式的經典!•《Head First 設計模式(中文版)》[30] (推薦,豆瓣評分 9.2):相當贊的一本設計模式入門書籍。用實際的編程案例講解算法設計中會遇到的各種問題和需求變更(對的,連需求變更都考慮到了!),並以此逐步推導出良好的設計模式解決辦法。

常用框架

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

網站架構

•《大型網站技術架構:核心原理與案例分析+李智慧》[38](推薦):這本書我讀過,基本不需要你有什麼基礎啊~讀起來特別輕鬆,但是卻可以學到很多東西,非常推薦了。•《億級流量網站架構核心技術》[39](推薦):一書總結並梳理了億級流量網站高可用和高並發原則,通過實例詳細介紹了如何落地這些原則。本書分為四部分:概述、高可用原則、高並發原則、案例實戰。從負載均衡、限流、降級、隔離、超時與重試、回滾機制、壓測與預案、緩存、池化、異步化、擴容、隊列等多方面詳細介紹了億級流量網站的架構核心技術,讓讀者看後能快速運用到實踐項目中。

軟體底層

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

其他

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

喜歡我可以給我設為星標哦

相關焦點

  • java入門必備書籍
    上回給大家推薦了一些C++的書籍,每個人可能喜歡的閱讀方式不同,有其他建議或者好的書籍推薦給我們留言,大家一塊學習進步。
  • 九年程式設計師推薦java書籍
    首先知乎爬取了以 #java# 為關鍵詞的三千本書,然後去除評分在7.5以下和評論人數少於150人次的書籍,最終得到以下篩選出以下結果.我將以評論人數排行榜&評分排行榜&綜合排行榜,進行書單的展示!並且你可以通過點擊書名,直接進入豆瓣查看該書的相關信息.
  • Java四大名著是什麼?java程式設計師提高技能的經典編程書籍推薦
    高薪程式設計師必讀的幾本書,基礎編程書籍推薦》,下面,再針對java程式設計師,梳理一些常見的圖書,期望對正在使用java編程的小夥伴有參考。1、《Head First Java》《HeadFirstJava》是一本完整地面向對象(object-oriented,OO)程序設計和Java的學習指導用書籍,根據學習理論所設計,你可以從程序語言的基礎開始,到線程、網絡與分布式程序等項目。重要的是,你可以學會如何像一個面向對象開發者一樣去思考,而且不只是讀死書。
  • 神級大牛推薦!學Java不得不看的經典書籍
    因此本文為大家推薦Java學習的書籍,學雖容易,學好不易,且學且珍惜。【內容介紹】本書從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了使用Java語言進行程序開發應該掌握的各方面技術。【推薦理由】本書內容詳盡,實例豐富,非常適合作為編程初學者的學習用書,也適合作為開發人員的查閱、參考資料。
  • 推薦一些java方面的經典書籍
    推薦一些java方面的經典必讀書籍,基本上都是提高內功的需要的小夥伴趕緊關注我吧,關注後回復「資料」JVM《深入理解Java虛擬機》《java性能權威指南》《實戰java虛擬機 JVM故障診斷與性能優化》Java《java並發編程實踐》《java8實戰》
  • 如何學習Java,哪裡開始學Java比較好?
    如何學習Java?哪裡開始學Java比較好?當然是從基礎開始學習咯,學習需要循序漸進  新手前期主要是安裝開發工具,基本入手步驟:  開發環境搭建,安裝JDK  安裝開發工具 - eclipse  買書籍或者看電子書:學習Java有哪些值得推薦的Java書籍?
  • 「核心基礎篇」Guide的Java後端書架來啦!都是Java程式設計師必看的書籍?
    這篇文章推薦的都是我所讀過的優秀書籍,部分可能沒看完。答應我,一定要看到最後,看完之後應該不會再糾結要看什麼書了。走起!!!這篇文章未涵蓋計算機基礎比如算法和數據結構、資料庫、分布式、微服務方面的書籍,這個留在下一篇文章推薦。
  • 這些入門級裝修必備書籍,良心推薦!
    如果你是一個裝修小白,面對要裝修的房子,肯定有很多迷茫的地方,不知道從哪裡下手,不知道向誰詢問,那不妨從書裡來學習一些裝修基礎知識,自己懂了才能不被人坑,下面就給大家推薦一些裝修必備書籍和APP,通俗易懂,適合小白,一起來看看吧!
  • Java程式設計師經典書籍列表(2020最新修訂版)
    當時也沒有Github和Stack Overflow,遇到問題就看java api,或者去csdn上找答案,學習效率很低。加上當時還在學C++,學了2年Java也沒有太大進展。讀研期間,自己經常去找些Java開發領域的經典書籍借來學習,感覺每次學習都是和技術大咖的一次交流,熟讀經典,能很快地填補自己知識的不足,為畢業找工作打好了基礎。現在畢業多年,自己也負責過多個公司重要項目的開發,也已經獲得了資深開發工程師的職級。但還是會時不時地把這些經典書籍拿出來看看,每次讀完都會有新的收穫。
  • Python入門必備的書籍推薦
    但是想要扎紮實實學好基礎,書籍是不可少的一種選擇,因為書本上的知識還是跟網上的介紹方法有點不一樣的,還有書籍上有比較全面,系統的基礎知識和理論,學習思路都會講解的特別詳細。書籍作為學習的輔助工具是不可缺少的,所以建議初學者還是要準備些相關的書籍,方便自己去學習掌握好知識。
  • 軟帝學院:Java程式設計師入門必看的 4 本 Java 書籍!
    畢竟,書是學習的海洋呢!So,想要入行Java的同學們準備好了嗎?現在雙手奉上Java程式設計師入門必讀之熱門書單。Horstmann / Gary Cornell 譯者:杜永萍 / 鄺勁筠 / 葉乃文簡介:《JAVA核心技術(卷1):基礎知識(原書第8版)》是《Java核心技術》的最新版,它反遇了Java SE6的新特性。
  • Java學習心得--給初學者的一些建議
    熱門也帶來了高薪和大量的工作機會,對那些準備通過學習Java來改變自己命運的學子來說,以下好的學習方法和經驗是非常值得借鑑的。在筆者看來,學習一門語言必備的幾個要點在於,看,練,悟。在這個連技術也已經淪為快餐的時代,很多人無可厚非的認為,在短時間內,快速應用一門語言才是他們所追求的,這也造成了當今培訓機構的泛濫。
  • Português丨學習葡語推薦書籍及必備網站
    葡萄牙語是世界上少數幾種分布廣泛的語言,在資金門檻、審批程序、居住時間等方面的優勢驅使下,葡萄牙買房移民在近兩年受到越來越多投資人士的青睞,學習葡語,對您的葡萄牙移民申請之路及今後的移民生活都有很大幫助。
  • 無錫小升初奧數學習必備書籍
    摘要:2012年無錫小升初已經結束了,奧數作為一個重要考試點,平時的奧數書籍哪些是必備的呢。    無錫奧數網7月30日訊:2012年無錫小升初必考奧數的多是民辦中學,一些公辦中學也把奧數作為分班的一個考察點,那麼哪些是奧數學習的必備書籍呢?
  • Java 學習路線
    ,包括從基礎、到 C++ 入門、進階、提升的視頻、書籍推薦,這些都是我大學期間真實走過的路,還沒看過的,先看下上篇文章:1、Linux C/C++ 學習路線(已拿騰訊、百度 offer)公眾號、以及朋友圈下面留言,有不少讀者希望我寫一篇 Java 的學習路線,以及我對於 Java 方向的看法。
  • 推薦10本好書
    學計算機相關專業的學生,在畢業就業之前,大家可能普遍會遇到一個困惑,就是以後從事軟體開發行業,該從事前端好還是後端好呢,該怎麼學好這些知識,在學習過程中該看哪些書比較好呢,本文內容就是幫你解決這些困惑,並推薦一些很不錯的書籍。
  • Java學到什麼程度才能叫精通?
    因為我自己大二系統學習 Java 就是看的這個,我本人覺得全網可能找不到比這個更好或者更系統地能讓你入門並具有實際開發經驗的東西了。在學習的過程中記得實踐!實踐!實踐!另外,看視頻配合書籍的效果更佳!!!下面我會列出一些我個人覺得Java程式設計師必備的書籍。
  • 學習Linux經典書籍推薦
    但是,回歸書籍並不代表說什麼書都看,現在市面上充斥了非常多質量比較一般的書,對我們幫助並不大,甚至可能會起到誤導的作用。而且我們的時間、精力都很有限,所以要看一定就要經典書籍!下面,我就介紹Linux方向的一些經典書籍,供大家學習參考。首先是Linux入門書籍的推薦。
  • 學習Java 從這些書開始吧
    學習Java就業時就意味著有不少選擇餘地的。推薦這些Java方面的書籍,僅供參考《Head First Java》零基礎的小白與半路出家者的最愛這是一本完整的面向對象(object-oriented,oo)程序設計和java的學習指導,以生動有趣而風靡。
  • 阿里內部學習指南《Effective Java中文 第3版》程式設計師進階必備
    經典Jolt獲獎作品《Effective Java》的第3版這本書,對上一版內容進行了徹底的更新,介紹了如何充分利用從泛型到枚舉、從註解到自動裝箱的各種特性,幫助讀者更加有效地使用Java程式語言及其基本類庫:java.lang. java.util和java.io,以及子包,如java.util