For the first time, I am going to enforce strict OO standards ...

When I hear this, I cringe. Nine times out of ten, the result will be barely usable, usually because the author's vision for their precious class library hasn't been broad enough to encompass the variety of problems that people might use the class library to solve, and sometimes because the resulting class library is too constrained. (Consider the standard Java classes. Need to extend String? Sorry, out of luck.)

Before you go too far down the "enforce" road, consider the "enable" road. It's a friendlier road, even if it can be a bit more chaotic. If you prefer to stick with the former path, consider switching to a language that supports enforcement with less convolution than Perl requires. Or treat the whole thing as an experiment.


In reply to Re: Ironclad protection of instance data by dws
in thread Ironclad protection of instance data by friedo

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.