- Code: The Hidden Language of Computer Hardware and Software (《編碼的奧祕》)
- Computer System: A Programmer’s Perspective (《深入理解計算機系統》) / Windows via C/C++ (《Windows核心編程》 / 《程序員的自我修養》
- Code Complete 2(《代碼大全》)/ The Pragmatic Programmer (《程序員修煉之道》,我也把這本書稱爲《代碼小全》)
- Programming Pearls (《編程珠璣》) / Algorithms / Algorithm Design / 《編程之美》
- The C Programming Language
- The C++ Programming Language / Programming: Principles and Practice Using C++ / Accelerated C++
- The Structure and Interpretation of Computer Programs (《計算機程序的構造和解釋》)
- Clean Code / Implementation Patterns
- Design Patterns (《設計模式》) / Agile Software Development, Principles, Patterns, and Practices
- Refactoring (《重構》)
注意:以上是我個人認爲你面試微軟開發職位前必須要讀的10本書,它不代表我的僱主的觀點。它也只是一個初步的書單,肯定會受到我個人經驗和眼界的限制。歡迎大家提意見。
此外,IT不同子領域的必讀書單可能千差萬別,所以在發佈之前我把這篇文章發給了一些朋友,他們給出了自己的書單(你是不是能看到一些有趣的共同點呢):
雲風(中國遊戲編程先行者,前網易遊戲部門資深程序員,簡悅創始人):
如果面試,我會挑以下的我自己讀過的書,讓人選擇他也讀過的部分,再瞭解他對這些書的理解。這些書其實本質上就是兩類,對所面對的東西(程序語言也好,操作系統也好,底層設施也好)本身的理解程度。以及另一類:對設計思想和原則的理解:
- C++編程思想
- Effective C++
- 深度探索C++對象模型
- C++語言的設計和演化
- C專家編程
- C陷阱與缺陷
- C語言接口與實現
- Lua程序設計
- Linkers and Loaders
- COM本質論
- Windows核心編程
- 深入解析Windows操作系統
- 程序員修煉之道
- 代碼大全
- UNIX編程藝術
- 設計模式
- 代碼優化:有效使用內存
- 深入理解計算機系統
- 深入理解LINUX內核
- TCP/IP 詳解
- 軟件隨想錄
- 黑客與畫家
- 重來
- UNIX編程藝術
- 編程人生
StackOverflow上有一個程序員必讀書單帖子,這裏僅列出top10,更多參考這裏。
- Code Complete 2
- The Mythical Man-Month (《人月神話》)
- Code: The Hidden Language of Computer Hardware and Software (《編碼的奧祕》)
- TAOCP (不解釋)
- The Pragmatic Programmer (《程序員修煉之道》)
- Design Patterns (《設計模式》)
- The Structure and Interpretation of Computer Programs (《計算機程序的構造和解釋》)
- Refactoring (《重構》)
- The C Programming Language
- Introduction to Algorithms (《算法導論》)
- 工程師入門:
- Code Complete 2
- 程序員修煉之道
- 深入理解計算機系統
- 工程師升級:
- 設計模式
- 重構——改善既有代碼的設計
- 工程師轉型:
- 快速軟件開發——有效控制與完成進度計劃
- 人月神話
- IT項目管理那些事兒
- 軟件隨想錄
- 最後期限
- 走出軟件作坊
- 你的燈亮着嗎?——發現問題的真正所在
- Algorithms (by Sanjoy Dasgupta, Christos Papadimitriou and Umesh Vazirani)
- Data Structure and Algorithms
- The C Programming Language
- The Design of the UNIX Operating System
- Compilers (龍書)
- Computer Architecture: A Quantitative Approach
- Flow
- Outliers (why hard work and luck are both important)
關於創新的書籍(http://book.douban.com/doulist/1253169/):
- The Myths of Innovation
- The Innovator’s Dilemma
- The Innovator’s Solution
- Crossing the Chasm
- Inside Intuit
- 盛田昭夫
- 傑克·韋爾奇自傳
- 夢斷代碼
- Innovation
- 浪潮之巔