OO
Fowler M., Refactoring:Improving the Design of Existing Code 对重构最全面的论述
Martin R., Agile Software Development: Principles, Patterns and Practices 即讲面向对象,又讲敏捷开发
Alexander C., Ishikawa S., Silverstein M., The Timeless Way of Building.可以说是设计模式的鼻祖
GOF Design Patterns: Elements of Reusable Object-Oriented Software 四人帮的设计模式
设计模式解析 Design Patterns Explained Alan Shalloway, James R. Trott著 徐言声 译 人民邮电
Java
Thinking in Java 个人认为java入门比较好的书
C++
Thinking in C++ Eckel B C++学习的最佳图书之一
C++ Primer 久负盛名的C++经典教程 (注意,不是C++ Primer Plus)
深度探索 C++ 对象模型 侯捷 译 不适合C++初学者
XP(极限编程)
Beck K, Extreme Programming Explained: Embrace Change 值得一读,即使你不打算使用XP
Cockburn A, Agile Software Development 对理解敏捷开发的各种问题,很好的一本书
算法、数据结构
算法导论 不用介绍了吧
数据结构与算法分析 Mark Allen Weiss著 我觉得比清华的好
编程珠玑I,II 一共两本书,都是经典问题的总结