Win a copy of The Java Performance Companion this week in the Performance forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Best Design Pattern books

 
Harsh Ravindra Gupta
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Guys,

I am starting on design patterns. Please guide to the best available
books on J2EE design patterns in particular and other design patterns in general.

Thanks and Regards
 
Cameron Wallace McKenzie
author and cow tipper
Saloon Keeper
Posts: 4968
1
Hibernate Spring Tomcat Server
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Okay, there is one book that really started it all, and you have to have it:

Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (The Gang of Four - GOF)

One problem with this book, I found, was that it was language agnostic. If the examples were in Java, I could understand it more, but they weren't, and I found that frustrating.

The GOF book is over 10 years old. Here's a book that is Java based, on Design Patterns, that is less that 1 year old. I'd suggest picking this up to:

Design Patterns in Java (Software Patterns Series) by Steven John Metsker, William C. Wake

This is also a good, Java based tutorial on Deisgn Patterns. It's a bit long in the tooth, but design patterns really don't change over time:

Java Design Patterns: A Tutorial by James W. Cooper

While you're at it, I would highly, highly, highly recommend a book on Refactoring code as well. Design Patterns and Refactoring really go hand in hand. The Refactoring book is a must have on any Java bookshelf, and it's an easy read as well:

Refactoring: Improving the Design of Existing Code by Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts


Cheers!

-Cameron McKenzie
[ January 11, 2007: Message edited by: Bear Bibeault ]
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you are new to design patterns, I would ignore the J2EE patterns for a start.

Another problem with the GoF book (the first Cameron mentions) is that it is very dry.

I have also heard very good things about "Head First Design Patterns". Make sure to take a look at it before you invest your money, to see if you like the style.

Also take a look at http://www.industriallogic.com/papers/learning.html

I second the recommendation for "Refactoring" - after I read that, I had a much better understanding of how the patterns help.

Another good book on design in general is "Agile Software Development - Principles, Patterns and Practices".
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
For grins, see Grady Booch's Pattern Catalog. But then go back to the books recommended above.
 
ismail hassani
Greenhorn
Posts: 9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think it's a good idea to start learning patterns with reading the patterns bible The GoF,it' seems by starting a little difficult and dry but you gain a deep understanding of patterns.

I think also it's a good idea to read that book together with another person to discuss frequently.
[ January 07, 2007: Message edited by: ismail hassani ]
 
Jan Cumps
Bartender
Posts: 2588
11
C++ Linux Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Harsh Ravindra Gupta:

J2EE design patterns in particular



Sun's Java blueprints/ describe patterns for enterprise java.

It's a book and lots of on-line resources. The PDF version of the book is available via above link.

Regards, Jan
 
Hung Tang
Ranch Hand
Posts: 148
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My personal favorite is
Agile Software Development by Robert Martin.
[ January 07, 2007: Message edited by: Hung Tang ]
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Another good book on enterprise patterns is "Patterns of Enterprise Application Architecture", by Martin Fowler if I remember correctly.

It's a little bit more generic than J2EE patterns and has examples in Java and a few in C#.
 
Jeevan Philip
Ranch Hand
Posts: 41
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
One onf the most readable book for starters is HFDP

http://www.oreilly.com/catalog/hfdesignpat/

Though some OO purists may not fsvor some of the examples in the book !
 
Stan James
(instanceof Sidekick)
Ranch Hand
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Google for "THinking in Patterns". It's by Bruce Eckell who did "Thinking in Java". I think it's free online at his site. It covers GoF with Java examples, but at a quick glance I didn't think it added much more.
 
Pj Murray
Ranch Hand
Posts: 194
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Check this out:

http://www.corej2eepatterns.com/
 
Bert Bates
author
Sheriff
Posts: 8898
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I'd recommend that you wait to tackle the J2EE patterns until after you're comfortable with the basics of the GoF patterns. The J2EE patterns are largely built on the GoF patterns.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic