• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Patterns and the GoF

 
frank mayer
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 8900
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
you could start with the J2EE patterns...

Check out "Core J2EE Patterns"
 
Lasse Koskela
author
Sheriff
Posts: 11962
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
 
Jessica Sant
Sheriff
Posts: 4313
Android IntelliJ IDE Java
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 94
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 13073
6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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!
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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.
 
Mark Spritzler
ranger
Sheriff
Posts: 17278
6
IntelliJ IDE Mac Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 8791
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 94
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
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
Posts: 2166
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
... 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 ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic