As for good examples, I would simply look at some of the more popular modules that are referred to here often but are more than just wrappers around common functions, such as CGI.pm, DBI, Bit::Vector, and more. As for bad code... well, there's a lot of it floating around there.... :D

From all that I've read here and elsewhere on OO Perl, it's not the same as any of the other major OO languages; you can break a lot of the typical rules that 'Object Oriented' applies to, and be selective about which rules that you want to use in your code when you do OO in Perl. The fact that Perl doesn't have strong type checking also allows many more rules to be broken. The best that you can do is at least encapsulate variables, have private and public functions, and provide new instances of an object as to keep everything working. While you could easily make a 100% complete OO perl program from that, most strive to instead to encapsulate as much as they can into objects, and then use standard procedural programming with object function calls as to simplify and increase the legibility of the code.


Dr. Michael K. Neylon - mneylon-pm@masemware.com || "You've left the lens cap of your mind on again, Pinky" - The Brain

In reply to Re: Perl and Objects, how do strongyou/strong resolve the two? by Masem
in thread Perl and Objects, how do you resolve the two? by frankus

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.