in reply to Object oriented architecture question

I want to build myself a web application in an object oriented manner.
Ahh yes. Why must we all do this, once? This is certainly in the list of "things reinvented by Perl programmers as a rite of passage", just like templating systems, CGI form parsers, command-line argument decoders, generic object attribute systems, object persistence, deep-copying algorithms, and the like.

In case that's not clear... Please Look At The CPAN before you reinvent the wheel. Study prior art. If you don't like what you see, discuss it with the author or talk to us about it. But Please Don't Reinvent The Wheel needlessly.

-- Randal L. Schwartz, Perl hacker

  • Comment on •Re: Object oriented architecture question

Replies are listed 'Best First'.
Re: •Re: Object oriented architecture question
by Juerd (Abbot) on Mar 28, 2002 at 22:38 UTC

    Ahh yes. Why must we all do this, once? This is certainly in the list of "things reinvented by Perl programmers as a rite of passage", just like templating systems, CGI form parsers, command-line argument decoders, generic object attribute systems, object persistence, deep-copying algorithms, and the like. ... Please Don't Reinvent The Wheel needlessly.

    You're a Perl trainer and I think you should know better. Re-inventing wheels is a great way to learn a language. Besides, if no-one reinvented wheels, we would never get better modules. It's not always good to worship a module and never reconsider its entire design.

    CGI form parsers are a great way of learning how split works, and how hashes work.

    Building a simple templating system is a great introduction into the world of substitutions.

    Parsing @ARGV manually can really improve your splice skills.

    Home brew object attribute systems and object persistence creations are to many a good way of OO self-education.

    Deep-copying alghorithms teach how to use recursion, and/or how to avoid it.


    I think that stopping people from re-inventing the wheel stops people from learning.

    U28geW91IGNhbiBhbGwgcm90MTMgY
    W5kIHBhY2soKS4gQnV0IGRvIHlvdS
    ByZWNvZ25pc2UgQmFzZTY0IHdoZW4
    geW91IHNlZSBpdD8gIC0tIEp1ZXJk
    

      You're a Perl trainer and I think you should know better. Re-inventing wheels is a great way to learn a language. Besides, if no-one reinvented wheels, we would never get better modules. It's not always good to worship a module and never reconsider its entire design.
      You misquote me. I have no problem with people reinventing wheels once they've studied prior art. It's the people that don't even take time to see what the similar solutions are that waste both their time, and ours. Both during the creation, then maintaining variants of the same crappy code, instead of collaborating to build something much better on top of the prior discoveries.

      -- Randal L. Schwartz, Perl hacker

Re: •Re: Object oriented architecture question
by fuzzyping (Chaplain) on Mar 28, 2002 at 23:39 UTC