Voilà mes indispensables pour la programmation OO (tous en anglais):
Les conceptes de base: "An introduction to Object-Oriented Programming", de Timothy Budd, chez Addison-Wesley.
Les design patterns (un classique): "Design Patterns: Elements of Reusable Object-Oriented Software", de Gamma, Helm, Johnson, Vlissides, chez Addison-Wesley.
Intro à UML: "UML Distilled: A Brief Guide to the Standard Object Modeling Language", de Martin Fowler, chez Addison-Wesley.
Et puis pour ceux qui sont interessé par le extreme programming:
"Extreme Programming Explained: Embrace Change", de Beck, chez Addison-Wesley.
"Refactoring, Improving the Design of Existing Code", de Martin Fowler, chez Addison-Wesley.