File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes OO, Patterns, UML and Refactoring and the fly likes Patterns and the GoF Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "Patterns and the GoF" Watch "Patterns and the GoF" New topic
Author

Patterns and the GoF

frank mayer
Greenhorn

Joined: Dec 06, 2004
Posts: 2
Hi all,

I need some help. I am taking my first OO course and I got into an animated argument with my instructor in our last class about patterns (not a wise move on my behalf). In particular we were discussing GoF (�Gang of Four�) patterns because, according to my instructor, they are the most recognized and most used collection of patterns This I agree with.). I am wondering if there other collections that are similar or better than the GoF. My instructor thinks there are no other patterns comparable to these. Naturaly, I disagreed with him because I think there are probably other collections that are as good but I couldn�t back up my claim because I don't know of any other patterns (I guess I inserted my foot into my mouth...sideways). This guy is really arrogant and I just want to let him know that the GoF isn�t the only collection of patterns on the �block�. Can anyone point me to some web sites where I can perhaps challenge his position? I just don�t think these are the only good patterns available. I would like to find a site that would allow me to compare and contrast its collection of patterns to the GoF�s collection�and maybe develop an argument that would perhaps convince him that this collection is at least as good as the GoF�s.

Sincerely,
Screwed
Bert Bates
author
Sheriff

Joined: Oct 14, 2002
Posts: 8829
    
    5
you could start with the J2EE patterns...

Check out "Core J2EE Patterns"


Spot false dilemmas now, ask me how!
(If you're not on the edge, you're taking up too much room.)
Lasse Koskela
author
Sheriff

Joined: Jan 23, 2002
Posts: 11962
    
    5
I would actually recommend Martin Fowler's Patterns of Enterprise Application Architecture instead of the Core J2EE Patterns book. Ideally, of course, you'd buy both


Author of Test Driven (2007) and Effective Unit Testing (2013) [Blog] [HowToAskQuestionsOnJavaRanch]
Jessica Sant
Sheriff

Joined: Oct 17, 2001
Posts: 4313

I'm moving this to the OO/Patterns forum where this is a better fit.

So please post your replies there, thanks!
Udayan Patel
Ranch Hand

Joined: Oct 14, 2004
Posts: 94
Originally posted by frank mayer:
Hi all,

I need some help. I am taking my first OO course and I got into an animated argument with my instructor in our last class about patterns (not a wise move on my behalf). In particular we were discussing GoF (�Gang of Four�) patterns because, according to my instructor, they are the most recognized and most used collection of patterns This I agree with.). I am wondering if there other collections that are similar or better than the GoF. My instructor thinks there are no other patterns comparable to these. Naturaly, I disagreed with him because I think there are probably other collections that are as good but I couldn�t back up my claim because I don't know of any other patterns (I guess I inserted my foot into my mouth...sideways). This guy is really arrogant and I just want to let him know that the GoF isn�t the only collection of patterns on the �block�. Can anyone point me to some web sites where I can perhaps challenge his position? I just don�t think these are the only good patterns available. I would like to find a site that would allow me to compare and contrast its collection of patterns to the GoF�s collection�and maybe develop an argument that would perhaps convince him that this collection is at least as good as the GoF�s.

Sincerely,
Screwed


GoF is like founding fathers of patterns. Patterns described by GoF are so useful at design and development time that one can not ignore them, Now back to your idea of patterns, All individual pattern has its own purpose. One can not replace another. There is no such thing called similar or better patterns then another. Patterns are the prectical solutions to specific type of problem. For and example, MVC: How would you replace this archtecture? if you do, It would be pretty much client server 2-tier system. Speaking of MVC, the whole MVC paradigm in java world is implimented using factory and commands pattern by GoF, how would you replace that?
William Brogden
Author and all-around good cowpoke
Rancher

Joined: Mar 22, 2000
Posts: 12803
    
    5
Keep in mind that the GoF book is not something dashed off on a weekend by four guys who happened to get stranded in an airport. Instead it is the product of intensive labor over years by very experienced computer scientists. It should not be surprising that they presented the most useful patterns that have stood the test of time.
Bill
Stan James
(instanceof Sidekick)
Ranch Hand

Joined: Jan 29, 2003
Posts: 8791
One of the OO or Agile conferences recently held a session to see what patterns people would "vote off the island" from the book. There has definitely been some evolution of ideas since it was published.

Patterns are mined from at least three samples of existing code, not made up from scratch just to publish a book. (Well, good ones anyhow.) As people tackle new problems we can expect new patterns to emerge. Sun contributed their J2EE patterns, and the Portland Pattern Repository continues to have active discussion about what's good and bad, new and old.

GoF was a tremendous achievement. Don't argue that! But the world moves on. An updated edition would be nice!


A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
I'd argue, though, that the GoF patterns still form the foundation for many of the other patterns. Strategy is a very basic pattern, for example - even some of the other patterns basically are specializations of a Strategy (an Abstract Factory is a Strategy for object creation, for example). Many of the J2EE patterns simply are specializations of GoF patterns, too.

Still, the movement is, well, moving, and there *are* very usefull patterns outside the GoF ones. Some of them are documented in the "Patterns Languages of Program Design" book series, for example. One of the patterns I use regularly is the Null Object pattern.


The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
Mark Spritzler
ranger
Sheriff

Joined: Feb 05, 2001
Posts: 17257
    
    6

I agree with Ilja.

The GoF patterns are the foundation of patterns. You could probably get all the other patterns and relate them back to the GoF patterns, they could be alternative representations or hybrid.

Mark


Perfect World Programming, LLC - Two Laptop Bag - Tube Organizer
How to Ask Questions the Smart Way FAQ
Ilja Preuss
author
Sheriff

Joined: Jul 11, 2001
Posts: 14112
Originally posted by Mark Spritzler:
You could probably get all the other patterns and relate them back to the GoF patterns, they could be alternative representations or hybrid.


I don't think that's true for *all* patterns - there are some very basic ones that are not in GoF. I think Null Object is one example.
Stan James
(instanceof Sidekick)
Ranch Hand

Joined: Jan 29, 2003
Posts: 8791
I reread the original question ... are there other pattern collections of the same significance? Probably not any as famous or widely applicable. I find some of the "OO Principles" Robert Martin talks about in "Agile Software Development" even more useful and important in day to day design and coding. There is some overlap with GoF and maybe some of the principles help illuminate why the patterns are important but it's a pretty darned nifty piece of work all on its own.
frank mayer
Greenhorn

Joined: Dec 06, 2004
Posts: 2
Hi Stan,

Actually, that was what I was trying to achieve. I thought perhaps there were variations of the GoF's collection available that could have the same or similar functionality.

Sincerely,
FM
Udayan Patel
Ranch Hand

Joined: Oct 14, 2004
Posts: 94
Originally posted by frank mayer:
Hi Stan,

Actually, that was what I was trying to achieve. I thought perhaps there were variations of the GoF's collection available that could have the same or similar functionality.

Sincerely,
FM



GoF is so widely used that it made me wonder, what made you research this?
Axel Janssen
Ranch Hand

Joined: Jan 08, 2001
Posts: 2164
... as patterns are mined or discovered not invented and the very experienced gof authors wrote the first software pattern book chances are high that their pattern are the most fundamental ones.
Am no expert in mining industries, but I think that if they start drilling for oil they find the biggest spots first, too.

Originally posted by frank mayer:
at least as good as the GoF�s.

As allways: depends on the project.
Of course to understand Enterprise style projects, Fowlers Enterprise Application Architecture are a valuable ressource, too. Or there are pattern books for asynchronous stuff.
Of course those books are very useful in their specific field. But what does "at least as good" mean?
I think one can say that gof book is most fundamental from a pure OO standpoint. If focus gets mixed with other concerns like for example enterprise the specific books catch up regarding usefulness.
[ December 09, 2004: Message edited by: Axel Janssen ]
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Patterns and the GoF