Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: How to learn Object Oriented Perl

by halley (Prior)
on Oct 04, 2005 at 14:02 UTC ( #497249=note: print w/replies, xml ) Need Help??


in reply to How to learn Object Oriented Perl

Most of those materials just discuss Perl's syntactic sugar which allows OO-style development. They offer very little in the way of wisdom about OO design.

The bit about "Perl Design Patterns" seems closer to that mark, but again it's just showing some implementation examples to people who are already mostly familiar with the concept of Design Patterns.

Knowing how polymorphism can help you clarify your design is something that takes hands-on learning. Knowing the theories about messaging, and encapsulation, and accessors, and the difference between aggregation and inheritance, will only take you so far.

I suggest you pick a problem which needs solving, and solving it yourself. Repeat this cycle a few times. You can read a cookbook all you want but you can't learn to knead bread until your hands are intimate with the eggs and flour. Your first loaf won't be a success, either.

(Update: I wrote this assuming that you're not familiar with OO because you're asking about OO-perl. I based this on the assumption that those who know about OO are probably going to pick up the perl-specific basics of OO-perl in about a day, and won't really fret about it that much.)

--
[ e d @ h a l l e y . c c ]

Replies are listed 'Best First'.
Re^2: How to learn Object Oriented Perl
by Perl Mouse (Chaplain) on Oct 04, 2005 at 14:10 UTC
    Most of those materials just discuss Perl's syntactic sugar which allows OO-style development. They offer very little in the way of wisdom about OO design.
    Which is exactly what you'd expect from those pieces of documentation. OO design is language independent, and hence, you should expect material discussing OO design among the documentation discussing the syntax and features of a particular language.

    If I buy a set of crayons, it might tell me how to open the package, and how to properly store them. It doesn't tell you how to produce art though.

    Perl --((8:>*

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (4)
As of 2020-10-29 14:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My favourite web site is:












    Results (271 votes). Check out past polls.

    Notices?