老哥整理最強一份Java讀書清單

老哥整理最強一份Java讀書清單

Java程式設計基礎

Java核心技術卷|基礎知識(原書第11版)

老哥整理最強一份Java讀書清單

針對Java SE 9、10、11全面更新,系統全面講解Java語言的核心概念、語法、重要特性和開發方法,包含大量案例,實踐性強。

Java語言程式設計(基礎篇) (原書第10版)

老哥整理最強一份Java讀書清單

主要介紹程式設計基礎、面向物件程式設計、GUI程式設計、資料結構和演算法、高階Java程式設計等內容。本書以示例講解解決問題的技巧,提供大量的程式清單,每章配有大量複習題和程式設計練習題,幫助讀者掌握程式設計技術,並應用所學技術解決實際應用開發中遇到的問題。

Java 8實戰

老哥整理最強一份Java讀書清單

本書全面介紹了Java 8 這個里程碑版本的新特性,包括Lambdas、流和函數語言程式設計。有了函式式的程式設計特性,可以讓程式碼更簡潔,同時也能自動化地利用多核硬體。全書分四個部分:基礎知識、函式式資料處理、高效Java 8 程式設計和超越Java 8,清晰明瞭地向讀者展現了一幅Java 與時俱進的現代化畫卷。

Java進階學習

Effective Java (原書第3版)

老哥整理最強一份Java讀書清單

是本好書,但初學者不建議嘗試,這是一本分享經驗並指引你少走彎路的經典著作,針對如何編寫高效、設計優良的程式提出了最實用、最權威的指導方針,透過90條經驗法則,探索新的設計模式和語言習慣用法,幫你更加有效地使用Java程式語言及其基本類庫。

Java程式設計思想

老哥整理最強一份Java讀書清單

不適合初學者,有些知識點晦澀難懂,需一定的程式設計基礎,耐心仔細琢磨。如果能啃下來這本書,那Java的內功會上一層樓。

Java核心技術卷|I高階特性(原書第11版)

老哥整理最強一份Java讀書清單

本書針對Java 11進行了修訂,涵蓋了完整的對高階UI特性、企業程式設計、網路、安全和Java強大的模組系統等內容的討論。

書中對Java複雜的新特性進行了深入而全面的研究,展示瞭如何使用它們來構建具有專業品質的應用程式,作者所設計的經過全面完整測試的示例反映了當今的Java風格和*佳實踐,這些示例設計精心,使其易於理解並且實踐價值極高,從而使讀者可以以這些示例為基礎來編寫自己的程式碼。

資料庫

MySQL必知必會

老哥整理最強一份Java讀書清單

書中從介紹簡單的資料檢索開始,逐步深入一些複雜的內容,包括聯結的使用、子查詢、正則表示式和基於全文字的搜尋、儲存過程、遊標、觸發器、表約束,等等。透過重點突出的章節,條理清晰、系統而扼要地講述了讀者應該掌握的知識,使他們不經意間立刻功力大增。

高可用MySQL:構建健壯的資料中心

老哥整理最強一份Java讀書清單

不適合MySQL初學者,主要講解真實環境下如何使用mysql 的複製、叢集和監控特性,揭示mysql 可靠性和高可用性的方方面面。本書由mysql 開發團隊親自執筆,定位於解決mysql 資料庫的常見應用瓶頸,在保持mysql 的持續可用性的前提下,挖潛各種提高效能的解決方案。本書分為三個部分。第一部分講述mysql 複製,包括高可用性和橫向擴充套件,第二部分介紹構建健壯的資料中心時監控和效能方面的問題,第三部分給出其他mysql 相關內容,包括雲計算和mysql 叢集。

高效能mysql第三版

老哥整理最強一份Java讀書清單

第3 版更新了大量的內容,講述了關於固態盤、高可擴充套件性設計和雲計算環境下的資料庫相關的新內容,原有的基準測試和效能最佳化部分也做了大量的擴充套件和補充。全書共分為16 章和6 個附錄,內容涵蓋mysql 架構和歷史,基準測試和效能剖析,資料庫軟硬體效能最佳化,複製、備份和恢復,高可用與高可擴充套件性,以及雲端的mysql 和mysql相關工具等方面的內容。每一章都是相對獨立的主題,讀者可以有選擇性地單獨閱讀。

MySQL技術內幕 InnoDB儲存引擎 第2版

老哥整理最強一份Java讀書清單

一共10章,首先宏觀地介紹了MySQL的體系結構和各種常見的儲存引擎以及它們之間的比較;接著以InnoDB的內部實現為切入點,逐一詳細講解了InnoDB儲存引擎內部的各個功能模組的實現原理,包括InnoDB儲存引擎的體系結構、記憶體中的資料結構、基於InnoDB儲存引擎的表和頁的物理儲存、索引與演算法、檔案、鎖、事務、備份與恢復,以及InnoDB的效能調優等重要的知識;最後對InnoDB儲存引擎原始碼的編譯和除錯做了介紹,對大家閱讀和理解InnoDB的原始碼有重要的指導意義。

資料結構與演算法

資料結構與演算法分析: Java語言描述(原書第3版)

老哥整理最強一份Java讀書清單

這本書確實是很好的資料結構與演算法分析的最佳入門教程,不過看這本書還是要有點資料結構的基礎。透過Java語言描述,討論了主要的資料結構:表、棧、佇列、樹、雜湊、優先佇列、不相交集合和圖;同時討論了經典的排序演算法:插入排序、希爾排序、堆排序、歸併排序、快速排序;介紹了5種常用演算法:貪婪演算法、分治演算法、動態規劃、隨機化演算法、回溯演算法;並討論了Java Collection中相關資料結構的實現:ArrayList、LinkedList、TreeSet、TreeMap、HashSet、HashMap、PriorityQueue。

漫畫演算法

老哥整理最強一份Java讀書清單

第1章 介紹了演算法和資料結構的相關概念,告訴大家演算法是什麼,資料結構又是什麼,它們有哪些用途,如何分析時間複雜度,如何分析空間複雜度。

第2章 介紹了最基本的資料結構,包括陣列、連結串列、棧、佇列、雜湊表的概念和讀寫操作。

第3章 介紹了樹和二叉樹的概念、二叉樹的各種遍歷方式、二叉樹的特殊形式——二叉堆和優先佇列的應用。

第4章 介紹了幾種典型的排序演算法,包括氣泡排序、快速排序、堆排序、計數排序、桶排序。

第5章 介紹了10餘道職場上流行的演算法面試題及詳細的解題思路。例如怎樣判斷連結串列有環,怎樣計算大整數相加等。

第6章 介紹了演算法在職場上的一些應用,例如使用LRU演算法來淘汰冷資料,使用Bitmap演算法來統計使用者特徵等。

labuladong的演算法小抄

老哥整理最強一份Java讀書清單

第1章列舉了幾個最常見的演算法型別及對應的解題框架思路,包括動態規劃、回溯、廣度優先搜尋及雙指標、滑動視窗等演算法技巧。

第2章用動態規劃的通用思路框架解決了十幾道經典的動態規劃問題,例如,正則表示式、揹包問題,同時還介紹瞭如何寫狀態轉移方程、如何進行狀態壓縮等技巧。

第3章介紹了資料結構相關的演算法,例如,二叉樹相關題目的解法,也包括LRU、LFU這種面試常考的演算法原理。

第4章介紹了回溯演算法、廣度優先搜尋演算法等核心套路在演算法題中的運用,鞏固對演算法框架的理解。

第5章講解了一些高頻題目,每道題目可能會結合多種演算法思路進行講解,也可能有多種解法,讀完這一章,你就可以獨自遨遊題海啦!

設計模式

深入淺出設計模式(影印版)

老哥整理最強一份Java讀書清單

大話設計模式

老哥整理最強一份Java讀書清單

本書的特色是透過小菜與大鳥的趣味問答,在講解程式的不斷重構和演變過程中,把設計模式的學習門檻降低,讓初學者可以更加容易地理解——為什麼這樣設計才是好的?是怎樣想到這樣設計的?以達到不但授之以“魚”,還授之以“漁”的目的。引導讀者體會設計演變過程中蘊藏的了、智慧。本書適合程式設計初學者或希望在面向物件程式設計上有所提高的開發人員閱讀。

併發程式設計

Java併發程式設計實戰

老哥整理最強一份Java讀書清單

本書深入淺出地介紹了Java執行緒和併發,是一本完美的Java併發參考手冊。書中從併發性和執行緒安全性的基本概念出發,介紹瞭如何使用類庫提供的基本併發構建塊,用於避免併發危險、構造執行緒安全的類及驗證執行緒安全的規則,如何將小的執行緒安全類組合成更大的執行緒安全類,如何利用執行緒來提高併發應用程式的吞吐量,如何識別可並行執行的任務,如何提高單執行緒子系統的響應性,如何確保併發程式執行預期任務,如何提高併發程式碼的效能和可伸縮性等內容,最後介紹了一些高階主題,如顯式鎖、原子變數、非阻塞演算法以及如何開發自定義的同步工具類。

Java併發程式設計的藝術

老哥整理最強一份Java讀書清單

內容涵蓋Java併發程式設計機制的底層實現原理、Java記憶體模型、Java併發程式設計基礎、Java中的鎖、併發容器和框架、原子類、併發工具類、執行緒池、Executor框架等主題,每個主題都做了深入的講解,同時透過例項介紹瞭如何應用這些技術。

Java 併發實現原理:JDK 原始碼剖析

老哥整理最強一份Java讀書清單

全面而系統地剖析了Java Concurrent包中的每一個部分,對併發的實現原理進行了深刻的探討。全書分為8章,第1章從最基礎的多執行緒知識講起,理清多執行緒中容易誤解的知識點,探究背後的原理,包括記憶體重排序、happen-before、記憶體屏障等;第2~8章,從簡單到複雜,逐個剖析Concurrent包的每個部分,包括原子類、鎖、同步工具類、併發容器、執行緒池、ForkJoinPool、CompletableFuture共7個部分。本書遵循層層遞進的邏輯,後一章建立在前一章的知識點基礎之上,建議讀者由淺入深,逐步深入閱讀。

多執行緒

圖解Java多執行緒設計模式

老哥整理最強一份Java讀書清單

以淺顯易懂的語言逐一說明了多執行緒和併發處理中常用的12 種設計模式。內容涉及執行緒的基礎知識、執行緒的啟動與終止、執行緒間的互斥處理與協作、執行緒的有效應用、執行緒的數量管理以及效能最佳化的注意事項等。此外,還介紹了一些多執行緒程式設計時容易出現的失誤,以及多執行緒程式的閱讀技巧等。在講解過程中,不僅以圖配文,理論結合例項,而且提供了運用模式解決具體問題的練習題和答案,幫助讀者加深對多執行緒和併發處理的理解,並掌握其使用技巧。

深入淺出 Java 多執行緒

老哥整理最強一份Java讀書清單

這本書是幾位大廠的大佬開源的,這幾位作者為了寫好《深入淺出 Java 多執行緒》這本書閱讀了大量的 Java 多執行緒方面的書籍和部落格,然後再加上他們的經驗總結、Demo 例項、原始碼解析,最終才形成了這本書。

非同步程式設計

老哥整理最強一份Java讀書清單

第1-2章主要介紹了非同步程式設計的概念、適用場景,以及如何使用執行緒和執行緒池來實現非同步程式設計;

第3章首先講解JDK中的各種Future及其內部實現原理,然後講解如何使用Future實現非同步程式設計,以及如何結合JDK8 Stream 和Future實現非同步程式設計;

第4章講解了Spring框架中提供的非同步執行能力,包含Spring中如何對TaskExecutor進行抽象,如何使用註解@Async實現非同步程式設計,以及其內部實現原理;

第5章講解了比較熱門的反應式程式設計相關的內容,包含什麼是反應式程式設計,如何使用反應式程式設計規範的庫RxJava和Reactor庫實現非同步程式設計;

第6章講解了Web Servlet的非同步非阻塞處理,包含Servlet 3。0規範是如何提供非同步處理能力的,Servlet 3。1規範是如何解決IO阻塞問題的,以及在Spring MVC中如何進行非同步處理。

第7章講解與Servlet技術棧並行存在的、由Spring5。0提出來的Spring WebFlux的非同步非阻塞處理,包含Spring WebFlux的由來、Spring WebFlux的併發模型、兩種程式設計模型,以及如何使用Spring WebFlux來進行服務開發、Spring WebFlux內部的實現原理。

第8章簡要介紹了業界為方便實現非同步程式設計而設計的一些框架和中介軟體,比如非同步基於事件驅動的網路程式設計框架Netty,高效能RPC框架Apache Dubbo,高效能執行緒間訊息傳遞庫Disruptor,非同步基、分散式、基於事件驅動的程式設計框架Akka,高效能分散式訊息平臺Apache RocketMQ 。

第9章介紹新興的Go語言是如何從語言層面提供了強大的非同步程式設計能力的。

JVM

深入理解Java虛擬機器: JVM高階特性與最佳實踐(第3版)

老哥整理最強一份Java讀書清單

第一部分(第1章)走近Java

系統介紹了Java的技術體系、發展歷程、虛擬機器家族,以及動手編譯JDK,瞭解這部分內容能對學習JVM提供良好的指引。

第二部分(第2~5章)自動記憶體管理

詳細講解了Java的記憶體區域與記憶體溢位、垃圾收集器與記憶體分配策略、虛擬機器效能監控與故障排除等與自動記憶體管理相關的內容,以及10餘個經典的效能最佳化案例和最佳化方法;

第三部分(第6~9章)虛擬機器執行子系統

深入分析了虛擬機器執行子系統,包括類檔案結構、虛擬機器類載入機制、虛擬機器位元組碼執行引擎,以及多個類載入及其執行子系統的實戰案例;

第四部分(第10~11章)程式編譯與程式碼最佳化

詳細講解了程式的前、後端編譯與最佳化,包括前端的易用性最佳化措施,如泛型、主動裝箱拆箱、條件編譯等的內容的深入分析;以及後端的效能最佳化措施,如虛擬機器的熱點探測方法、HotSpot 的即時編譯器、提前編譯器,以及各種常見的編譯期最佳化技術;

第五部分(第12~13章)高效併發

主要講解了Java實現高併發的原理,包括Java的記憶體模型、執行緒與協程,以及執行緒安全和鎖最佳化。

全書以實戰為導向,透過大量與實際生產環境相結合的案例分析和展示瞭解決各種Java技術難題的方案和技巧。

Java虛擬機器規範(Java SE 8版)

老哥整理最強一份Java讀書清單

本書完整而準確地闡釋了Java虛擬機器各方面的細節,圍繞Java虛擬機器整體架構、編譯器、class檔案格式、載入、連結與初始化、指令集等核心主題對Java虛擬機器進行全面而深入的分析,深刻揭示Java虛擬機器的工作原理。同時,書中不僅完整地講述了由Java SE 8所引入的新特性,例如對包含預設實現程式碼的介面方法所做的呼叫,還講述了為支援型別註解及方法引數註解而對class檔案格式所做的擴充套件,並闡明瞭class檔案中各屬性的含義,以及位元組碼驗證的規則。

熱門框架

Spring技術內幕:深入解析Spring架構與設計原理(第2版)

老哥整理最強一份Java讀書清單

從原始碼的角度對spring的核心和各個主要功能模組的架構、設計和實現原理進行了深入剖析。你不僅能從本書中參透spring框架的優秀架構和設計思想,還能從spring優雅的實現原始碼中一窺java語言的精髓。本書在開篇之前對spring的設計理念和整體架構進行了全面的介紹,能讓讀者從宏觀上釐清spring各個功能模組之間的關係;第一部分詳細分析了spring的核心:ioc容器和aop的實現,能幫助讀者瞭解spring的執行機制;第二部分深入闡述了各種基於ioc容器和aop的java ee元件在spring中的實現原理;第三部分講述了acegi安全框架、dm模組以及flex模組等基於spring的典型應用的設計與實現。

Spring Boot技術內幕:架構設計與實現原理展

老哥整理最強一份Java讀書清單

Linux

鳥哥的Linux私房菜 基礎學習篇 第四版

老哥整理最強一份Java讀書清單

第一部分著重說明計算機的基礎知識、Linux的學習方法,如何規劃和安裝Linux主機以及CentOS 7。x的安裝、登入與求助方法;

第二部分介紹Linux的檔案系統、檔案、目錄與磁碟的管理;

第三部分介紹文字模式介面shell和管理系統的好幫手shell指令碼,另外還介紹了文字編輯器vi和vim的使用方法;

第四部分介紹了對於系統安全非常重要的Linux賬號的管理、磁碟配額、高階檔案系統管理、計劃任務以及程序管理;

第五部分介紹了系統管理員(root)的管理事項,如瞭解系統執行狀況、系統服務,針對登入檔案進行解析,對系統進行備份以及核心的管理等。

鳥哥的Linux私房菜:伺服器架設篇(第三版)

老哥整理最強一份Java讀書清單

第一篇,伺服器搭建前的進修專區,主要介紹架設伺服器之前必須具備的基本知識,看完這一篇,不論您的Linux是以何種方式進行Internet連線,都將不成問題;

第二篇,主機的簡易安全防護措施,這一篇鳥哥將告訴您如何保護您的主機,以及如何養成良好的操作習慣,使您的主機能夠百毒不侵,安然渡過一次次的考驗;

第三篇,區域網內常見伺服器的搭建,介紹內部網路經常使用的遠端連線服務(SSH、VNC、XRDP),網路引數設定服務(DHCP、NTP),網路磁碟服務(Samba、NFS、iSCSI),以及代理伺服器等服務。其中SSH金鑰系統,對於異地備份更是相當有幫助,您絕對不能錯過;

第四篇,常見因特網伺服器的搭建,介紹DNS、WWW、FTP及Mail Server等常見的服務。

運維方面

Docker技術入門與實戰(第3版)

老哥整理最強一份Java讀書清單

第一部分(第1~8章)介紹Docker與虛擬化技術的基本概念,包括安裝、映象、容器、倉庫、資料卷、埠對映等;

第二部分(第9~16章)透過案例介紹Docker的應用方法,包括與各種作業系統平臺、SSH服務的映象、Web伺服器與應用、資料庫的應用、各類程式語言的介面、容器雲等,還介紹了作者在容器實戰中的思考與經驗總結;

第三部分(第17~21章)介紹一些進階技能,如Docker核心技術實現原理、安全、高階網路配置、libnetwork外掛化網路功能等;

第四部分(第22~28章)介紹與容器開發相關的開源專案,包括Etcd、Docker Machine、Docker Compose、Docker Swarm、Mesos、Kubernetes等

Kubernetes權威指南:從Docker到Kubernetes實踐全接觸(第4版)

老哥整理最強一份Java讀書清單

從架構師、開發人員和運維人員的角度,闡述了Kubernetes的基本概念、實踐指南、核心原理、開發指導、運維指南、新特性演進等內容,圖文並茂、內容豐富、由淺入深、講解全面;並圍繞在生產環境中可能出現的問題,給出了大量的典型案例,比如安全配置方案、網路方案、共享儲存方案、高可用方案及Trouble Shooting技巧等,有很強的實戰指導意義。

netty

Netty實戰 : Netty IN ACTION

老哥整理最強一份Java讀書清單

第一部分詳細地介紹Netty的相關概念以及核心元件,

第二部分介紹自定義協議經常用到的編解碼器,

第三部分介紹Netty對於應用層高階協議的支援,會覆蓋常見的協議及其在實踐中的應用,

第四部分是幾個案例研究

kafka

深入理解Kafka:核心設計與實踐原理

老哥整理最強一份Java讀書清單

前4章為基礎篇,包括基礎概念、生產者、消費者,以及主題與分割槽,學習完這4章的內容完全可以應對絕大多數的開發場景。

第5章至第8章為原理篇,包括對日誌儲存、協議設計、控制器、組協調器、事務、一致性、可靠性等內容的探究,學習完這4章的內容可以讓讀者對Kafka有一個深刻的認知。

最後4章從應用擴充套件層面來做講解,可以歸類為擴充套件篇,主要內容包括監控、應用工具、應用擴充套件(延時佇列、重試佇列、死信佇列、訊息軌跡等)、與Spark的整合等,讓讀者可以對Kafka的生態有一個更加全面的認知。

Elasticsearch

Elasticsearch 原始碼解析與最佳化實戰

老哥整理最強一份Java讀書清單

介紹了Elasticsearch的系統原理,旨在幫助讀者瞭解其內部原理、設計思想,以及在生產環境中如何正確地部署、最佳化系統。系統原理分兩方面介紹,一方面詳細介紹主要流程,例如啟動流程、選主流程、恢復流程;另一方面介紹各重要模組的實現,以及模組之間的關係,例如gateway模組、allocation模組等。本書的最後一部分介紹如何最佳化寫入速度、搜尋速度等大家關心的實際問題,並提供了一些診斷問題的方法和工具供讀者參考。

Redis

Redis設計與實現

老哥整理最強一份Java讀書清單

第一部分“資料結構與物件”介紹了Redis中的各種物件及其資料結構,並說明這些資料結構如何影響物件的功能和效能。

第二部分“單機資料庫的實現”對Redis實現單機資料庫的方法進行了介紹,包括資料庫、RDB持久化、AOF持久化、事件等。

第三部分“多機資料庫的實現”對Redis的Sentinel、複製、叢集三個多機功能進行了介紹。

第四部分“獨立功能的實現”對Redis中各個相對獨立的功能模組進行了介紹,涉及釋出與訂閱、事務、Lua指令碼、排序、二進位制位陣列、慢查詢日誌、監視器等。。

Redis 深度歷險:核心原理與應用實踐

老哥整理最強一份Java讀書清單

分為基礎和應用篇、原理篇、叢集篇、拓展篇、原始碼篇共 5 大塊內容。基礎和應用篇講解對讀者來說最有價值的內容,可以直接應用到實際工作中;原理篇、叢集篇讓開發者透過簡單的技術表面看到精緻的底層世界;拓展篇幫助讀者拓展技術視野和夯實基礎,便於進階學習;原始碼篇讓高階的讀者能夠讀懂原始碼,掌握核心技術實力。

適合以下人群閱讀:有 Redis 基礎,渴望深度掌握 Redis 技術原理的中高階後端開發者;渴望成功進入大型網際網路企業研發部的中高階後端開發者;需要支撐公司 Redis 中介軟體運維工作的初中級運維工程師;對 Redis 中介軟體技術好奇的中高階前端技術研究者。

分散式/微服務

微服務架構設計模式

老哥整理最強一份Java讀書清單

本書將教會你如何開發和部署生產級別的微服務架構應用。這套寶貴的架構設計模式建立在數十年的分散式系統經驗之上,Chris 還為開發服務添加了新的模式,並將它們組合成可在真實條件下可靠地擴充套件和執行的系統。本書不僅僅是一個模式目錄,還提供了經驗驅動的建議,以幫助你設計、實現、測試和部署基於微服務的應用程式。

鳳凰架構:構建可靠的大型分散式系統

老哥整理最強一份Java讀書清單

第一部分 演進中的架構(第1章)

著重介紹了軟體開發歷史中多種主流架構風格出現的契機、解決的問題以及帶來的新缺陷。

第二部分 架構師的視角(第2~5章)

總結了一名架構師應該在架構設計時思考哪些問題,有哪些主流的解決方案和行業標準做法,各種方案有什麼優缺點,不同的解決方法會帶來什麼不同的影響,等等。

第三部分 分散式的基石(第6~10章)

重點討論了“不同架構風格是應該在技術規範上統一,還是由應用系統自行解決”這個問題,給出瞭解決思路、方法和常見工具。

第四部分 不可變基礎設施(第11~15章)

重點講解了基礎設施不變性的目的、原理與實現途徑,包括虛擬化容器、容器間網路、持久化儲存、資源與排程、服務網格等內容。

第五部分 技術方法論(第16章)

面向技術決策者集中討論了與分散式、微服務、架構等相關的理論話題,將解決問題的能力歸納、總結、昇華為方法論。

架構師

從零開始學架構

老哥整理最強一份Java讀書清單

1) 架構設計基礎,包括架構設計相關概念、歷史、原則、基本方法,讓架構設計不再神秘;

2) 架構設計流程,透過一個虛擬的案例,描述了一個通用的架構設計流程,讓架構設計不再依賴天才的創作,而是有章可循;

3) 架構設計專題:包括高效能架構設計、高可用架構設計、可擴充套件架構設計,這些模式可以直接參考和應用;

4) 架構設計實戰,包括重構、開源方案引入、架構發展路徑、網際網路架構模板等

架構即未來:現代企業可打展的Web架構、流程和組織(原書第2版)

老哥整理最強一份Java讀書清單

透過閱讀本書,你可以學習到以最大化敏捷性和擴充套件性來最佳化組織機構的新策略,以及對雲計算(IaaS/PaaS)、NoSQL、DevOps和業務指標等的新見解。而且利用其中的工具和建議,你可以系統化地清除擴充套件性道路上的障礙,在技術和業務上取得前所未有的成功。

提高程式碼質量

重構(第2版) : 改善既有程式碼的設計

老哥整理最強一份Java讀書清單

● 理解重構的過程和重構的基本原則;

● 快速有效地應用各種重構手法,提升程式的表達力和可維護性;

● 識別程式碼中能指示出需要重構的地方的“壞味道”;

● 深入瞭解各種重構手法,每個手法都包含解釋、動機、做法和範例4 個部分;

● 構建穩固的測試,以支援重構工作的開展;

● 理解重構過程的權衡取捨以及重構存在的挑戰等。

程式碼整潔之道

老哥整理最強一份Java讀書清單

本書提出一種觀念:程式碼質量與其整潔度成正比。乾淨的程式碼,既在質量上較為可靠,也為後期維護、升級奠定了良好基礎。作為程式設計領域的佼佼者,本書作者給出了一系列行之有效的整潔程式碼操作實踐。這些實踐在本書中體現為一條條規則(或稱“啟示”),並輔以來自現實專案的正、反兩面的範例。只要遵循這些規則,就能編寫出乾淨的程式碼,從而有效提升程式碼質量。

程式碼整潔之道 : 程式設計師的職業素養

老哥整理最強一份Java讀書清單

本書是程式設計大師“Bob大叔”40餘年程式設計生涯的心得體會的總結,講解要成為真正專業的程式設計師需要具備什麼樣的態度,需要遵循什麼樣的原則,需要採取什麼樣的行動。作者以自己以及身邊的同事走過的彎路、犯過的錯誤為例,意在為後來者引路,助其職業生涯邁上更高臺階。

程式設計珠璣(第2版•修訂版)

老哥整理最強一份Java讀書清單

在書中,作者選取許多具有典型意義的複雜程式設計和演算法問題,生動描繪了歷史上眾大師們在探索解決方案中發生的軼事、走過的彎路和不斷精益求精的歷程,引導讀者像真正的程式設計師和軟體工程師那樣富於創新性地思考,並透徹闡述和總結了許多獨特而精妙的設計原則、思考和解決問題的方法以及實用程式設計技巧。解決方案的程式碼均以C/C++語言編寫,不僅有趣,而且有很大的實戰示範意義。每章後所附習題極具挑戰性和啟發性,書末給出了簡潔的解答。