程序员必读书单
1. Coding Practice | 编程实践
1.1. 基础篇
Clean Code《代码整洁之道》
Pragmatic Unit Testing《单元测试之道》
The Productive Programmer《卓有成效的程序员》
Test-Driven Development By Example《测试驱动开发》
Clean Coder《程序员的职业修养》
The Art of Readable Code《编写可读代码的艺术》
Programming Pearls《编程珠玑》
The C Programming Language《C程序设计语言》
Fundamentals of Compiling《编译原理》
1.2. 进阶篇
Refactoring To Patterns《重构与模式》
Refactoring:Improving the Design of Existing Code《重构:改善既有代码的设计》
Implementation Patterns《实现模式》
Code Complete《代码大全》
Don’t Make Me Think《点石成金:访客至上的网页设计秘笈》
The Pragmatic Programmer《程序员修炼之道》
Introduction to Algorithms《算法导论》
Effective C++
More Effective C++
Effective Java
1.3. 高级篇
Structure and Interpretation of Computer Programs《计算机程序的构造和解释》
Working Effectively with Legacy Code《修改代码的艺术》
The Art of Computer Programming《计算机程序设计艺术》
Code:The Hidden Language of Computer Hardware and Software《编码:隐匿在计算机软硬件背后的语言》
Godel Escher Bach An Eternal Golden Braid《哥德尔、艾舍尔、巴赫书:集异璧之大成》
2. Architecture & Design | 架构与设计
2.1. 基础篇
Agile Software Development 《敏捷软件开发:原则、实践与模式》
Practices of an Agile Developer《高效程序员的45个习惯:敏捷开发修炼之道》
Head First Design Patterns《深入浅出设计模式》
Design Patterns 《设计模式》
2.2. 进阶篇
The Art of UNIX Programming 《Unix编程艺术》
Practical API Design 《框架设计的艺术》
Domain Specific Languages 《领域特定语言》
Patterns of Enterprise Application Architecture 《企业应用架构模式》
The Little Schemer
The Seasoned Schemer
2.3. 高级篇
Release It
Domain-Driven Design 《领域驱动设计》
Enterprise Integration Patterns《企业集成模式》
Beautiful Architecture《架构之美》
Pattern-Oriented Software Architecture《面向模式的软件架构》
3. Methodology | 方法论
3.1. 基础篇
User Stories Applied《用户故事与敏捷方法》
The Gold Mine《金矿》
Scrum and XP From the Trenches《硝烟中的Scrum和XP》
Continuous Integration《持续集成》
Extreme Programming Explained《解析极限编程》
3.2. 进阶篇
Lean Thinking《精益思想》
Continuous Delivery《持续交付》
How Google Tests Software
Agile Testing
Extreme Programming Refactored《重构极限编程》
The Mythical Man-Month: Essays on Software Engineering《人月神话》
The Inmates Are Running The Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity 《交互设计之路》
3.3. 高级篇
Specification By Example
Peopleware 《人件集:人性化的软件开发》
Surely You’re Joking, Mr. Feynman! 《别闹了,费曼先生!》
4. Thought & Leadership | 思想与领导力
4.1. 基础篇
The Effective Executive《卓有成效的管理者》
Are Your Lights On?《你的灯亮着吗》
Becoming A Technical Leader《成为技术领导者》
The 7 Habits of Highly Effective People《高效能人士的七个习惯》
Minto Pyramid Principle《金字塔原理》
4.2. 进阶篇
The Fifth Discipline《第五项修炼》
The Design Of Business
Management 3.0《管理3.0:培养和提升敏捷领导力》
Presentation To Win
The McKinsey Way《麦肯锡方法》
Principle《原则》
4.3. 高级篇
Thinking, Fast and Slow《思考快与慢》
Zen and the Art of Motorcycle Maintenance《禅与摩托车维修艺术》
Coders at Work《编程人生》
5. 其它推荐图书
《Modern C++ Design》 by Andrei Alexandrescu
《Best Software Writing I》 by Joel Spolsky
《The Practice of Programming | 程序设计实践》by Kernighan and Pike
《Pragmatic Thinking and Learning: Refactor Your Wetware》 by Andy Hunt
《Software Estimation: Demystifying the Black Art》 by Steve McConnel
《The Passionate Programmer| 我编程,我快乐:程序员职业规划之道》by Chad Fowler
《Hackers: Heroes of the Computer Revolution | 黑客:计算机革命的英雄》
《Algorithms + Data Structures = Programs》
《Writing Solid Code》
《JaveScript:The Good Parts | JavaScript语言精粹》
《Getting Real 》by 37 Signals
《Foundations of Programming 》by Karl Seguin
《Computer Graphics: Principles and Practice in C (2nd Edition) | 计算机图形学原理及实践:C语言描述》
《Thinking in Java | Java编程思想》by Bruce Eckel
《The Elements of Computing Systems》
《Refactoring to Patterns | 重构与模式 》 by Joshua Kerievsky
《Modern Operating Systems | 现代操作系统》by Andrew S. Tanenbaum
《The Annotated Turing》
《Things That Make Us Smart》 by Donald Norman
《The Timeless Way of Building | 建筑的永恒之道 》by Christopher Alexander
《The Deadline: A Novel About Project Management》 by Tom DeMarco
《The C++ Programming Language | C++程序设计语言》by Stroustrup
《Patterns of Enterprise Application Architecture | 企业应用架构模式》
《Computer Systems – A Programmer’s Perspective | 深入理解计算机系统》
《Agile Principles, Patterns, and Practices in C#》 by Robert C. Martin
《Growing Object-Oriented Software, Guided by Tests》
《Framework Design Guidelines | .NET设计规范:约定、惯用法与模式》 by Brad Abrams
《Object Thinking》 by Dr. David West
《Advanced Programming in the UNIX Environment | UNIX环境高级编程》 by W. Richard Stevens
《Hackers and Painters: Big Ideas from the Computer Age | 黑客与画家》
《The Soul of a New Machine | 新机器的灵魂》 by Tracy Kidder
《CLR via C# | 框架设计》 by Jeffrey Richter
《Design Patterns in C#》 by Steve Metsker
《Alice in Wonderland | 爱丽丝梦游仙境》 by Lewis Carol
《Zen and the Art of Motorcycle Maintenance | 禅与摩托车维修艺术》by Robert M. Pirsig
《About Face – The Essentials of Interaction Design | About Face3交互设计精髓》
《Here Comes Everybody: The Power of Organizing Without Organizations | 未来是湿的:无组织的组织力量》 by Clay Shirky
《The Tao of Programming》
《Computational Beauty of Nature》
《Philip and Alex’s Guide to Web Publishing》
《Object-Oriented Analysis and Design with Applications | 面向对象分析与设计》 by Grady Booch
《Effective Java | Effective Java中文版》 by Joshua Bloch
《Computability: An Introduction to Recursive Function Theory》 by N. J. Cutland
《Masterminds of Programming | 编程大师智慧/编程之魂》
《The Art of Deception》 by Kevin Mitnick
《The Career Programmer: Guerilla Tactics for an Imperfect World》 by Christopher Duncan
《Paradigms of Artificial Intelligence Programming: Case studies in Common Lisp》
《Masters of Doom | Doom启示录》
《Pragmatic Unit Testing in C# with NUnit》 by Andy Hunt and Dave Thomas with Matt Hargett
《How To Solve It: A New Aspect of Mathematical Method | 怎样解题:数学思维的新方法》 by George Polya
《The Alchemist | 牧羊少年奇幻之旅》 by Paulo Coelho
《Smalltalk-80: The Language and its Implementation》
《Writing Secure Code (2nd Edition) 》by Michael Howard
《Introduction to Functional Programming》 by Philip Wadler and Richard Bird
《No Bugs!: Delivering Error Free Code in C and C++》 by David Thielen
《Rework | 重来:更为简单有效的商业思维》 by Jason Freid and DHH
《JUnit in Action | JUnit实战》
参考文献
程序员读书雷达-CSDN博客
精选编程书籍与技术领域-CSDN博客
