Ratings34
Average rating4
This is considered a bible for OO design by some. This book defines many common design patterns. The book begins with a case study that attempts to illustrate how the decision to apply a particular design pattern came into play, which was a nice touch. The subsequent chapters each deal with a design pattern, grouped by its type, that describes the problem and solution followed by benefit-cost analysis and some examples.
The book is not a good read, compared to several other books on design pattern. It functions more as a reference guide. The book feels a bit dated by today's standards and the code samples are primarily in C++. I found myself mostly skipping the code samples (they're not hard to follow, just unnecessary for me) and just read the analysis of a pattern, as I'm already familiar with many of the patterns and am just looking for points that I may already have missed.