经典编程书籍书单
目录
经典书籍有助于提升自己,多读经典的编程书籍有利于夯实自己的基础。尽量抽空多读书吧。
带删除线的表示自己已经读过了。如 《软件开发者路线图:从学徒到高手》
在github看到一个编程相关的书单,列举编程相关的书籍。特此引用,原文github地址 [https://github.com/jobbole/awesome-programming-books](https://github.com/jobbole/awesome-programming- books) ,欢迎大家去star关注
100+ 经典技术书籍,涵盖:计算机系统与网络、系统架构、[“算法”]与数据结构、前端开发、后端开发、移动开发、数据库、测试、项目与团队、程序员职业修炼、求职面试 和 编程相关的经典书籍。
这个列表综合了伯乐在线网站以往推荐 经典书籍 文章中的列表,以及在微信和微博中被广泛推荐的好书。虽然已经包括了100多本,覆盖的面也比较全。仍然有很多方面需要补充,而且相信还有很多没有被收录的好书。欢迎大家在 issues 中推荐或自荐。
计算机系统与网络
- 《 图灵的秘密:他的生平、思想及论文解读 》
- 《 计算机系统概论 》
- 《 深入理解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个习惯:敏捷开发修炼之道(修订版) 》
大师访谈
- 《 编程大师智慧 》
- 《 编程大师访谈录 》
- 《 编程人生 : 15位软件先驱访谈录 》
- 《 奇思妙想 : 15位计算机天才及其重大发现 》
- 《 图灵和ACM图灵奖 》
架构/性能
- 《 微服务设计 》
- 《 大数据日知录 》
- 《 企业应用架构模式 》
- 《 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
- 《 精通C#(第6版) 》
- 《 深入理解C#(第3版) 》
- 《 CLR via C#(第4版) 》
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
- 《 Android编程权威指南(第2版) 》
- 《 移动应用UI设计模式(第2版) 》
iOS
- 《 iOS编程实战 》
- 《 iOS编程(第4版) 》
- 《 Objective-C高级编程 》
- 《 Effective Objective-C 2.0:编写高质量iOS与OS X代码的52个有效方法 》
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版) 》
- 《 门后的秘密:卓越管理的故事 》
- 《 极客与团队:软件工程师的团队生存秘笈 》
求职面试
- 《 程序员面试金典(第5版) 》
- 《 编程之美 : 微软技术面试心得 》
- 《 金领简历:敲开苹果、微软、谷歌的大门 》
- 《 剑指Offer:名企面试官精讲典型编程题(纪念版) 》
编程之外
《 暗时间 》- 《 数学之美 》
- 《 赢得朋友 》
- 《 精益创业 》
- 《 批判性思维 》
- 《 世界是数字的 》
- 《 程序员的数学 》
- 《 程序员健康指南 》
- 《 禅与摩托车维修艺术 》
- 《 关键对话:如何高效能沟通 》
- 《 写作法宝:非虚构写作指南 》
《 黑客与画家 : 来自计算机时代的高见 》- 《 软件随想录(卷1) 》《 软件随想录(卷2) 》
- 《 如何把事情做到最好:改变全球9800万人的人生指导书 》