in reply to Model the data first
in thread How do you program (again)?

I'll second the notion, and try a paraphrase:

Make it easy on yourself, too. Get Code Complete and Design Patterns. Find out what UML is, and if it fits your way of thinking, use it; but don't force it, or get caught up in dogma. I use bits and pieces from 6 different programming "schools" - Waterfall, Rational, Extreme, etc. Do what works best for you, and you'll be most productive. Find work environments where this fact is respected.

Replies are listed 'Best First'.
Re^2: Model the data first
by wazoox (Prior) on Jun 03, 2005 at 10:14 UTC
    I've worked a bit with UML 4 to 5 years ago, and quite frankly, it confuses me more than it helps : I find too often that the nice UML blue-print doesn't fit well actual data, or workflow, and has to be trashed after the development has already advanced quite far. Maybe that's just me...
    Proper datamodeling is very important though, but I prefer thinking it directly in Perl, or relational databases, or whatever else I'll be using to manage the actual data.

      No matter what the application, there is always a model that expresses the Classes in your code, and a metamodel that expresses the structure you used to write them. The first thing you do when you refactor someone else's mess is identify what objects they have, what properties they are setting etc.

      The thing is, is your model explicit in your design or implicitly spread throughout your codebase?

      $h=$ENV{HOME};my@q=split/\n\n/,`cat $h/.quotes`;$s="$h/." ."signature";$t=`cat $s`;print$t,"\n",$q[rand($#q)],"\n";
        I'm trying hard to have an explicit model, I promise :) However it's not always as easy as it may seem at the first glance. More than that, UML drives me in path to models that may be elegant or clever, but hardly map on actual perl code :)