(First, I made a similiar post already but it seems to have not made it to through the gates of the monastery. I apologize if it shows up twice.) You make a very good point about the dangers here, and I will certainly implement your ideas. However, I am a little stumped how the constructors you listed would prevent the problem. Can you elaborate? For instance, how does: my $self= bless {%$hashRef}, $class; protect the objects from being changed in the way you describe. One thing I did was make %_permitted be a hash that is created from the table data as well, so only those columns in the table can be in the object and not anything extra, so that you if you add to that hash randomly the hash will have the value but the object will not allow it. So, if it is not in the _permitted hash then it is not part of the object. Does that address the issue in part, or did I misunderstand?

In reply to Re: (tye)Re: OO Perl and Design Issues by jonjacobmoon
in thread OO Perl and Design Issues by jonjacobmoon

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.