chromatic's book explains how to do it the modern way (Moose), but does not say very much about object orientation in general.

Sure, that's not the point of the chapter. Even so, I like to think that principles such as "favor composition over inheritance", "take advantage of encapsulation", and "define your interfaces well" come across clearly. Then there's the Advanced Perl OO section which goes into LSP, DRY, and even immutability (which is present, though not made explicit, in almost all of the examples in the code and the rest of the book).

I thought about adding SOLID or at least Open-Closed, but couldn't find the right way to work it in in further detail.


In reply to Re^4: Which is best book to start learning Object Oriented Perl? by chromatic
in thread Which is best book to start learning Object Oriented Perl? by Perl300

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.