Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: Maintainable Code?

by Mr. Muskrat (Canon)
on Nov 11, 2002 at 18:07 UTC ( [id://212003]=note: print w/replies, xml ) Need Help??


in reply to Maintainable Code?

If you are using well-documented code, then I see no problem with including "grown-up" Perl concepts. You might want to include a reference in the comments to a book (complete with page number) or website (Perl Monks?) that will explain the "grown-up" Perl concept you are using.

If you continuously dumb down your code, then how are they ever going to grow up as a Perl programmer?

Replies are listed 'Best First'.
Re: Re: Maintainable Code?
by gizmo_mathboy (Friar) on Nov 12, 2002 at 04:56 UTC

    In The Mythical Man-Month Brooks said, "Show me your flowcharts and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowcharts; they'll be obvious."

    I interpret this to mean, "Show me your data and I can understand your code."

    Basically, if you document what your data structure should look like, what the the keys at both levels should be as well as the value of the second level keys, then maintenance should be a snap.

    I use the following notation for hashes (I probably should just use the format that Data::Dumper uses but I like this, too)

    |->key1
    |     |->key1.1 = value1.1
    |
    |->key2
    |     |->key2.1 = value2.1
    |
    |->key3
          |->key3.1 = value3.1
    
    It sort of represents how I've visualized hashes.

      I typically phrase that as "Data Structures are Algorithms" - a pun to Nicolas Wirth fully intended.

      Abigail

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://212003]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (2)
As of 2024-04-26 00:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found