Possibly, but their insistence on OO only solutions, even in C++ where others are available, didn't help. It's been a while since I read the book, but I don't remember them presenting multiple implementations for each pattern.

It's already a pretty thick book :-)

It's a fair criticism I guess - but picking implementation examples in languages that the majority of readers would be familiar with would seem a reasonable choice. The problem is that all some people seem to get from the books are those examples - not that nice bit of text preceding it that talks about why and where you should and should not use the pattern.

And a bunch of them are OO design patterns. So what? The book isn't the definitive list of all design patterns for all languages and methodologies - and the authors were pretty darn clear about that as I recollect. Unfortunately there seem to be a large chunk of people incapable of understanding this :-(

I just reject their school of thought when it insists on OO only and their followers when they insist that any implementation of a solution to one of the GoF problems must mimic the one in the book.

God yes. Huge pains the arse.

However, just as bad are the ones who reject everything from the book because "Perl has arrays/foreach" - conveniently ignoring that there's a lot more in the GoF book than just the iterator pattern, and that there are still a bunch of places you do want to use the iterator pattern instead of an array.


In reply to Re^4: MJD's "Design Patterns Aren't" by adrianh
in thread MJD's "Design Patterns Aren't" by Scott7477

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.