in reply to Thought for the week, April 8

Dear Anonymous Monk,

I interpret your meditation as meaning "There's no such thing as a one-off program", when applied to IT. If so, this sentiment is laudible.

However, the word design has connotations when it comes to software, as design is quite downstream of many activities.

First of all... Requirements, requirements, requirements!

What problem are you trying to solve? It may be, that uniqueness is a requirement, in which case you need to design for exactly _one_, not zero or many. For example Class::Singleton.

I think a more important focus is to design for the future. Try to anticipate future requirements.

My recommendation is to get a good book on design patterns. Fellow monks, can you recommend any?

--rW

Replies are listed 'Best First'.
Re: Re: Thought for the week, April 8
by Molt (Chaplain) on Apr 12, 2002 at 09:35 UTC

    Not sure about a Perl-oriented one, if such a beast exists, but for a general guide I tend to use the almost-standard 'Design Patterns' by Gamma, Helm, Johnson, and Vlissides. Examples in this are in Smalltalk and C++, and some patterns don't map too well onto the Perl brainspace. Admittedly you do end up spending a lot of time looking at the examples and going 'Now what would I use this for myself..?", but I find this with many architectural/design books.

    The only Perl-specific Design Patterns resource I've yet seen is the heavily incomplete webpage at http://www.patternsinperl.com. Some nice discussions on a few patterns, but not too much as yet.