這個列表包括了 100 多本經典技術書籍,涵蓋:計算機系統與網路、系統架構、演算法與資料結構、前端開發、後端開發、移動開發、資料庫、測試、專案與團隊、程式設計師職業修煉、求職面試 和 程式設計相關的經典書籍。
本列表綜合了伯樂線上網站以往推薦經典書籍文章中的列表,以及在微信和微博中被廣泛推薦的好書。雖然已經包括了 100 多本,覆蓋的面也比較全,仍然有很多方面需要補充,而且相信還有很多沒有被收錄的好書。歡迎大家在評論中推薦或自薦。
這篇文章主要是分類別推薦了該類別所屬的經典書籍列表。每個類別下,從書名就可以看出來,是區分了方向。即使是同一個方向,也側重點不同。即使側重點相同,作者講解的思路也是不同的。請選擇自己關注的方向,根據圖書的簡介選擇適合自己的書籍學習。
我們也在 GitHub 上同步更新這個列表,地址:https://github.com/jobbole/awesome-programming-books 歡迎關注!
計算機系統與網路
- 《圖靈的祕密:他的生平、思想及論文解讀》
- 《計算機系統概論》
- 《深入理解Linux核心》
- 《深入Linux核心架構》
- 《TCP/IP詳解 卷1:協議》
- 《Linux系統程式設計(第2版)》
- 《Linux核心設計與實現(第3版)》
- 《深入理解計算機系統(原書第2版)》
- 《計算機程式的構造和解釋(原書第2版)》
- 《編碼:隱匿在計算機軟硬體背後的語言》
- 《效能之顛:洞悉系統、企業與雲端計算》
- 《UNIX網路程式設計 卷1:套接字聯網API(第3版)》
- 《UNIX網路程式設計 卷2:程式間通訊》
- 《Windows核心程式設計(第5版)》
- 《WireShark網路分析就這麼簡單》
- 《WireShark網路分析的藝術》
程式設計通用
- 《程式設計原本》
- 《程式碼大全》
- 《UNIX程式設計藝術》
- 《程式碼整潔之道》
- 《程式設計珠璣(第2版)》
- 《程式設計珠璣(續)》
- 《軟體除錯的藝術》
- 《修改程式碼的藝術》
- 《程式語言實現模式》
- 《編寫可讀程式碼的藝術》
- 《解析極限程式設計:擁抱變化》
- 《精通正規表示式(第3版)》
- 《編譯原理(第2版)》龍書
- 《重構:改善既有程式碼的設計》
- 《七週七語言:理解多種程式設計範型》
- 《除錯九法:軟硬體錯誤的排查之道》
- 《程式設計語言:實踐之路(第3版)》
- 《計算的本質:深入剖析程式和計算機》
- 《設計模式 : 可複用物件導向軟體的基礎》
演算法與資料結構
- 《演算法(第4版)》
- 《演算法導論(原書第2版)》
- 《Python演算法教程》
- 《演算法設計與分析基礎(第3版)》
- 《學習 JavaScript 資料結構與演算法》
- 《資料結構與演算法分析 : C++描述(第4版)》
- 《資料結構與演算法分析 : C語言描述(第2版)》
- 《資料結構與演算法分析 : Java語言描述(第2版)》
職業修煉與規劃
- 《大教堂與集市》
- 《卓有成效的程式設計師》
- 《程式設計師的職業素養》
- 《程式設計師修煉之道:從小工到專家》
- 《軟體開發者路線圖:從學徒到高手》
- 《我程式設計,我快樂: 程式設計師職業規劃之道》
- 《程式設計師的思維修煉:開發認知潛能的九堂課》
- 《高效程式設計師的45個習慣:敏捷開發修煉之道(修訂版)》
大師訪談
架構/效能
- 《微服務設計》
- 《大資料日知錄》
- 《企業應用架構模式》
- 《Web效能權威指南》
- 《SRE:Google運維解密》
- 《釋出!軟體的設計與部署》
- 《高擴充套件性網站的 50 條原則》
- 《大型網站技術架構:核心原理與案例分析》
- 《恰如其分的軟體架構:風險驅動的設計方法》
- 《軟體系統架構:使用視點和視角與利益相關者合作(第2版)》
Web前端
- 《高效能 JavaScript》
- 《鋒利的 jQuery(第2版)》
- 《JavaScript 忍者祕籍》(感謝@joker-danta 補充推薦)
- 《編寫可維護的 JavaScript》
- 《你不知道的 JavaScript(上)》
- 《JavaScript 權威指南(第6版)》
- 《JavaScript 語言精粹(修訂版)》
- 《JavaScript DOM程式設計藝術 (第2版)》
- 《JavaScript 高階程式設計(第3版)》
- 《JavaScript 非同步程式設計:設計快速響應的網路應用》
- 《Effective JavaScript:編寫高質量JavaScript程式碼的68個有效方法》
- 《HTML5 權威指南》
- 《HTML5 祕籍(第2版)》
- 《HTML5 與 CSS3 基礎教程(第八版)》
- 《CSS 揭祕》
- 《CSS 設計指南(第3版)》
- 《CSS 權威指南(第3版)》
- 《深入淺出 HTML 與 CSS》
Java開發
- 《Java8 實戰》
- 《Java併發程式設計實戰》
- 《Java效能權威指南》
- 《Java程式設計師修煉之道》
- 《實戰Java高併發程式設計》
- 《Java程式設計思想 (第4版)》
- 《深入理解Java虛擬機器(第2版)》
- 《Effective java 中文版(第2版)》
- 《Java核心技術·卷1:基礎知識(原書第9版)》
- 《Java核心技術·卷2:高階特性(原書第9版)》
.NET
Python
- 《集體智慧程式設計》
- 《笨辦法學Python》
- 《Python基礎教程》
- 《Python原始碼剖析》
- 《Head First Python》
- 《與孩子一起學程式設計》
- 《Python學習手冊(第4版)》
- 《Python Cookbook(第3版)》
- 《Python參考手冊(第4版)》
- 《Python核心程式設計(第3版)》
- 《Python科學計算(第2版)》
- 《利用 Python 進行資料分析》
- 《Think Python:像電腦科學家一樣思考Python(第2版)》
- 《Python程式設計實戰:運用設計模式、併發和程式庫建立高質量程式》
- 《Python絕技:運用Python成為頂級黑客》
- 《Flask Web開發:基於Python的Web應用開發實戰》
Android
iOS
PHP
C語言
C++
- 《C++標準庫》
- 《C++程式設計思想》
- 《C++語言的設計與演化》
- 《C++程式設計原理與實踐》
- 《C++ Primer (中文第5版)》
- 《C++ Primer習題集(第5版) 》
- 《C++程式設計語言(第1-3部分)(原書第4版) 》
- 《Effective C++:改善程式與設計的55個具體做法(第3版)(中文版) 》
- 《More Effective C++:35個改善程式設計與設計的有效方法(中文版) 》
機器學習和資料探勘
- 《資料之巔》
- 《矩陣分析》
- 《機器學習》
- 《統計學習方法》
- 《機器學習導論》
- 《推薦系統實踐》
- 《機器學習實戰》
- 《Web資料探勘》
- 《深入淺出統計學》
- 《模式分類(第2版)》
- 《概率論與數理統計》
- 《統計學習基礎(第2版)(英文) 》
- 《資料探勘:概念與技術(第3版)》
- 《資料探勘:實用機器學習工具與技術(原書第3版)》
- 《大資料:網際網路大規模資料探勘與分散式處理(第2版)》
資料庫
- 《SQL應用重構》
- 《SQL Cookbook》
- 《高效能MySQL (第3版)》
- 《深入淺出SQL(中文版)》
- 《MySQL技術內幕 : InnoDB儲存引擎(第2版)》
- 《深入淺出MySQL : 資料庫開發、優化與管理維護》
測試
- 《探索式軟體測試》
- 《有效的單元測試》
- 《Google軟體測試之道》
專案與團隊
- 《人月神話》
- 《快速軟體開發》
- 《人件(原書第3版)》
- 《門後的祕密:卓越管理的故事》
- 《極客與團隊:軟體工程師的團隊生存祕笈》
求職面試
程式設計之外
- 《暗時間》
- 《數學之美》
- 《贏得朋友》
- 《精益創業》
- 《批判性思維》
- 《世界是數字的》
- 《程式設計師的數學》
- 《程式設計師健康指南》
- 《禪與摩托車維修藝術》
- 《關鍵對話:如何高效能溝通》
- 《寫作法寶:非虛構寫作指南》
- 《黑客與畫家 : 來自計算機時代的高見》
- 《軟體隨想錄(卷1)》《軟體隨想錄(卷2)》
- 《如何把事情做到最好:改變全球9800萬人的人生指導書》
我們也在 GitHub 上同步更新這個列表,地址:https://github.com/jobbole/awesome-programming-books 歡迎關注!