The idea behind this book is a very good one: teaching patterns avoiding excessive formalisms and with a hands on approach. I had great expectations from this title which were only partially met.
The book content is sound and some of the patterns are explained in a decent way, but the workbook approach fails as most of the questions are unclear or just too trivial. I find the choice of using a firework factory to work out all of the patterns weird at best.. it makes for a very boring sequence .. fireworks might be fun to see but who cares to learn about star presses, fuses and chemical batches? Besides squeezing all of the patterns in a single context makes for a very forced result. And how about all the swing code thrown in without a real reason? It is just distracting. The author is certainly competent, and a sharp programmer, but he could not resist the typipcal geeky tendency of making things more complicated than they really are by throwing into the discussion basically everything he likes or knows about... parsers, state machines, swing, recursion, object models etc etc.. not to mention the damn fireworks.. ! ;)
I am still looking forward to a book that offers a clear , no frills explanation of design patterns and presents for each pattern a series of ( a lot of ) examples from different context. That is what is n eeeded to absorb good object oriented design and patterns.. simple, clear explanations and practice, practice, practice. Meanwhile, before you go for "the book" (Design Patterns by Erich Gamma, et al ) I would recommend reading
Design Patterns Explained by Alan Shalloway.