Book Review: Implementation Patterns
When I saw Implementation Patterns by Kent Beck due for publication, I thought: “Kent Beck—yay! Patterns—yay! Famed Addison-Wesley signature series—yay!” I snatched a copy as soon as it came out. In retrospect, this book is nothing what I expected it to be.
Quite simply, I don’t understand its purpose. The book is only 143 pages long and is too brief to enlighten beginners and too shallow for advanced developers.
“Patterns” in the title is a misnomer. These aren’t patterns the GoF or Fowler style. They are principles of code construction. This subject is covered way better in Steve McConnell’s Code Complete which, in my opinion, is a must read for everyone who wants to graduate from a closet hacker to a real software developer. In fact, Implementation Patterns covers the exact same ground (in Java) in far less detail. It is, essentially, a mini-Code Complete.
It does contain a quick rehash of some general OO principles, patterns and refactorings, e.g. class, interface, subclass, inner class, conditional, delegation, value object; field, collecting parameter, parameter object, eager and lazy initialization, etc. However, It’s much more a philosophical book than a how-to.
The grand theme of Implementation Patterns
“The goal of this book is to help you communicate your intensions through your code. […] Throughout, the book is focused on programming techniques that enhance communication.”
It’s really about communication (e.g., “Communication with people is the purpose of class names.”) It’s about how to write code, expressive and robust enough for other people to understand; how to code in terms of intension, rather than implementation (McConnell covers this subject very well), etc.
I don’t understand who this book was written for and why. There are plenty of great books for Java and non-Java developers. Besides, since it’s an AW signature series book, it’s way overpriced. If I knew better, I would have passed it up.