I actually didn't like "Pattern Hatching: Design Patterns Applied." I didn't find it very helpful. Check out the "OO, Patterns, UML and Refactoring" forum, there were a number of discussions on this topic in late Jan/early Feb. I have a couple books and web sites I referenced in a talk I gave. See http://web.mit.edu/hershey/www/Real_World_Software_Engineering_files/references.txt There are scores of pattern and pattern-related books these days. A good bet is to go to your favorite online book retailer, search of "software patterns" and read the reviews listed.
"svoropay", The Java Ranch has thousands of visitors every week, many with surprisingly similar names. To avoid confusion we have a naming convention, described at http://www.javaranch.com/name.jsp . We require names to have at least two words, separated by a space, and strongly recommend that you use your full real name. Posts which contravene the naming convention are not eligible to win books! Please choose a new name which meets the requirements.
By far a really good book on design patterns is - "Design Patterns" by by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Grady Booch (Designer) We had used this book while designing one of our projects. I feel it is a bit heavy for first timers but once you get a hang of it it is really good. I am going through another book which is kind of a quick reference - "Essential Java Style - Patterns for Implementation" by Jeff Langr. I will not comment on it yet. I will say it is a good primer for patterns.
I had seen that someone had already mentioned 'Java Design Patterns' by Cooper. It is an excellent book. It follows the �Design Patterns� book or more commonly called the GoF book. He goes over the same patterns, but the nice thing is that he uses java examples for everything, and they are full working programs and are supplied on CD also. I recommend it whole-heartedly.
I didn't like "Java Design Patterns" by James Cooper. It didn't show enougth in a deep understanding how patterns can be applied. "Thinking in Patterns" is a good book to understand global principles about design patterns, but I think this is not enougth level for the exam. After reading both books, I'm thinking on buying the GoF "Desing Patterns"
[This message has been edited by Anil Vupputuri (edited February 21, 2001).]
SCJP 1.5, SCEA, ICED (287,484,486)
Joined: Jan 30, 2001
I've read some really harsh reviews of Mark Grand's books. It seems newby types love them because they are easy to read and focus on Java instead of the C++ code you'll find in GoF. But it would appear that people who are already deeply rooted in design patterns are rather dissappointed by it. To be safe, I've decided to stay away from them until I'm smart enough to tell the difference myself, because I know how damaging it can be to learn something the first time from a bad book (and then think you know the right way!). That's just me, though. Chris
I have read the GoF book and James Coopers companion to it. Although I have no C++ or Smalltalk, the principles in GoF are understandable if you reread it a few times. They explain things accurately and clearly, but like the O'Reilly nutshell books it is fact rich with not much hand holding. In other words don't expect it to be a tutorial. I like the Java focus in James Coopers book though and he spends a lot of time helping you spot Patterns in Swing. There are quite a few typos in the downloadable version (hey what do you expect for free ?). It also makes you realise how unlikely you are to use some of these patterns (Flyweight, Interpreter ??) and how you have been using some already without even realising it. What I would like is a book that focuses on any Patterns that might be present in the J2EE platform and how your apps might use new Patterns. Now I am getting boring....
I would go with the Gamma, et. al./Gang of Four/Gof book. I'm not sure about Cooper's book but I did see him give a talk at a conference. He covered a lot of patterns and was a good presenter but it is difficult to predict how good the book is based on this. My impression of Grand's books from the times I have glanced at them were that they pretty much took patterns from other sources (GoF, PLoP) and just changed the code to Java. I could be wrong on this. John
The only reason for time is so that everything doesn't happen all at once.
- Buckaroo Banzai