REVIEW - Implementation Patterns


Implementation Patterns


Kent Beck


Addison-Wesley Professional (2008)




Seb Rose


December 2009



It is difficult to decide who this book is aimed at. Given the title of the book (and the subtitle on the back cover that reads "... a Catalog of Patterns Infinitely Useful for Everyday Programming"), you might expect a reference tome that sits beside the ubiquitous GoF volume. I doubt that that is where it will end up.

For starters the book is unashamedly slanted towards Java, with references to Java visibility, Java collection classes and (in the context of framework design) the Java packaging scheme. This is not necessarily a weakness in itself - the GoF book presented the material in C++ and Smalltalk - but the patterns in this book are much lower level, and in some cases, much more specific to the implementation language. I would have expected some indication of this bias in the title or on the cover somewhere.

I would also question whether the book describes patterns at all. Certainly, they are not presented formally (with context, problem, forces, solution and consequences), but instead are small sections of prose grouped into chapters with titles like Class, State, Behavior, Methods.

Some of these sections describe the Java language itself (e.g. "Behavior: Control Flow") while others are stylistic in content (e.g. "State: Role-Suggesting Name"). I found myself agreeing with almost everything that was written, but very little reached levels of concreteness that I actually thought might be useful. And when I read that "the whole question of equality seemed more important 20 years ago" ("Methods: Equality") I found myself wondering if I'd been transported to a twilight zone somewhere between software engineering and gender politics.

The prose style is clear and easy to read, which lends credibility to the main thrust of the book (outlined in a 2-page chapter Motivation), which is that coding style is about communicating intent to people. However, I think that less experienced programmers will find it all a bit woolly, while those with more experience will wonder if there's anything good on telly.

Book cover image courtesy of Open Library.

Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED

By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED

Settings can be changed at any time from the Cookie Policy page.