Top critical review
29 of 37 people found this helpful
A catalogue of obvious ideas
on 14 December 2005
I was disappointed with this book, especially given its previous reviews here. After reading a good technical book I like to feel that I've learned something that would've taken me months or years to figure out, but most of this book struck me as being already obvious to anyone with a few years' programming experience.
Don't get me wrong, if a method name is unclear I'm all up for renaming it to something better. But do I really need to look up how to do it in a catalogue (which the author says is the main purpose of the book)? Or call it something fancy like "refactoring"? I've deliberately chosen the simplest example of course, but most refactorings are not much more complex: moving a method into another object, splitting a temporary variable into two, replacing a conditional with polymorphism, etc. Only one is a non-obvious enough idea that it gave me the "ooo" feeling that GoF generates throughout (introduce null object), and even that has simple enough mechanics that it's not something I would need to refer back to.
Some of the prose chapters were interesting when they drifted away from the main subject (especially the chapter about automated tests), which is why I've given two stars. However, if you're a professional programmer who enjoys a good read but in practice is more concerned with what will push forward your career, on both counts your time is better invested elsewhere.