- Started reading:
- 19th February 2007
- Finished reading:
- 3rd April 2007
Best selling author and world-renowned software development expert Robert C. Martin shows how to solve the most challenging problems facing software developers, project managers, and software project leaders today.
The bulk of this book describes OO design principles. They’re presented in a readable, useful, and well-organized way. Often they just clarify and put a name to something you’ve probably been doing anyway. The standard Dependency Inversion Principle is there, for one. Others, like the Interface Segregation Principle, are less well known but reinforce lots of other good practices, such as data hiding and prevention of “interface leakage”. Robert does a wonderful job of explaining each design pattern, demonstrating their use through code, and placing them within the context of his design principles. The examples are numerous and, with a few exceptions, well written. One of the best books I’ve read, along with Design Patterns: Elements of Reusable Object-Oriented Software by Gamma, et al., and Refactoring: Improving the Design of Existing Code by Martin Fowler.