Object-oriented design reading list
- Martin Fowler: Refactoring: Improving the Design of Existing Code (book)
A classic that made refactoring popular. It’s mainly a catalog of refactoring techniques with motivations and examples. It also contains a list of “code smells”, which indicate there is something wrong with your code. For many beginners in OOD, this will be the most useful part.