Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^4: Which is best book to start learning Object Oriented Perl?

by chromatic (Archbishop)
on Apr 27, 2018 at 20:39 UTC ( [id://1213708]=note: print w/replies, xml ) Need Help??


in reply to Re^3: Which is best book to start learning Object Oriented Perl?
in thread Which is best book to start learning Object Oriented Perl?

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.

  • Comment on Re^4: Which is best book to start learning Object Oriented Perl?

Replies are listed 'Best First'.
Re^5: Which is best book to start learning Object Oriented Perl?
by Laurent_R (Canon) on Apr 28, 2018 at 10:20 UTC
    Hi chromatic,

    I definitely agree with you. I hope you didn't interpret my comment as a critique of your book, which it is definitely not. In fact, I found Modern Perl so useful and good that I bought the paper copy after having read it on-line. I even co-translated it into French (https://perl.developpez.com/tutoriels/perl/modern-perl-2014/) about 3 years ago. And I have learned quite a lot from reading this book, including especially from the OOP chapter. My point was just that your book couldn't cover in just one chapter as much as what Damian is covering in a full book.

      No critique taken! I just wanted to give some context that's not always obvious to readers.

      My goal is to teach good OO programming in Perl without having to focus on the mechanism of making objects; that's why I started with Moose first, went into design principles, returned to core syntax, and then gave pointers to advanced topics.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (3)
As of 2024-04-25 21:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found