Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Perl Object Oriented Meta-Tutorial

by btrott (Parson)
on Apr 20, 2000 at 21:40 UTC ( [id://8215]=perltutorial: print w/replies, xml ) Need Help??

Perl Object Oriented Meta-Tutorial

This is a meta-tutorial, in that it's meant not to teach the reader how to use objects in Perl, but where to find information about using objects in Perl. This may sound irrelevant or useless, but with the amount of documentation that ships with the standard Perl, a meta-tutorial might be useful--or even necessary.

Think of this as an extended index to various sources of documentation on OO Perl.


Before you learn about objects in Perl, you need to be familiar with certain concepts: references, as discussed in perlref and perlreftut (unfortunately, I can't find a working URL for the latter), and modules and packages, as discussed in perlmod. This isn't, of course, necessary if you're just trying to *use* objects (as opposed to writing them, that is).

But it may be helpful all the same.


If you're just beginning your OO education by learning OO Perl, you need documentation that presumes no prior knowledge of object-oriented principles. As such, these sources are a good start for any OO beginner:

  • Easy Perl5 Object Intro

    This is short, quick, and to-the-point. The assumption is that you're not necessarily trying to learn how to write OO Perl, just to use it; as the Intro says, the two are very different, and if you're new to OO Perl and just want to use OO modules on CPAN or elsewhere, you shouldn't assume that you need to know anything about how to write OO code-- and this document will tell you everything you need to use it.

  • Beginner's Object-Oriented Tutorial

    This is Randal Schwartz's beginner's tutorial to OO Perl. Its goal is to assume no prior OO knowledge and to give you a good, clear start in using OO in general, and OO Perl specifically. Randal's "animal" example works well for teaching basic the basic principles.

A Modicum of Experience

So you're no longer (or never were?) a beginner to object- oriented programming. Now you need to learn how to do it in Perl. These are a good start.

  • Tom's Object-Oriented Tutorial for Perl

    Tom Christiansen's perltoot is a very solid introduction to using objects in Perl. It assumes familiarity with OO principles (particularly in the sense that it uses OO terms quite liberally), but doesn't assume that you know how to use them in Perl. This, then, is more an introduction to writing OO code in Perl than to writing OO code, in general.

  • Perl Objects

    The basic Perl Objects manpage. Again, this assumes that you know OO concepts, and that you know how Perl references work; but if you know both of those, this is a good place to start.


  • Bag'o Object Tricks

    This is an interesting document. I'm placing it in advanced simply because it assumes that you've read the above documents before reading this one. As it says quite clearly, it is not a tutorial--it's meant to give you some ideas and some tricks for object-oriented programming in Perl. Think of this as a big picture, concept-oriented discussion of OO Perl.

All of the Above

  • Object Oriented Perl

    Damian Conway's OO Perl book doesn't fit into any of the above categories, because it works for anyone from a novice to an expert. This is an excellent book.

The Others

There are a good number of other resources on OO programming in Perl; they're not listed above because they're not solely focused on OO.
2005-09-22 jdporter fixed some broken links to old documentation.

Replies are listed 'Best First'.
Perl Object Tutorials - Perl Design Patterns - Re: Perl Object Oriented Meta-Tutorial
by scrottie (Scribe) on Aug 14, 2003 at 18:00 UTC

    Perl Design Patterns - beyond object syntax, into tricks, refactoring, object oriented design/analysis, pitfalls, and object theory. If I may say so myself, the first text on Perl objects of the callibar you'd find on a college course at a respected University (and apparently a few professors agree, as gradulate level course websites love to link there).

    -scott (not feeling very modest today)
Re: Perl Object Oriented Meta-Tutorial
by ian (Beadle) on Dec 07, 2007 at 19:47 UTC
    Also, Higher Order Perl has a section about caching in object methods. I also found someone demonstrating an example of a static cache.

    It also appears that the same person who'd written about static object caches also wrote a pragma called reform that adds helpful syntax for Perl 5 OOP.

    -- Ian Tegebo
Re: Perl Object Oriented Meta-Tutorial
by Anonymous Monk on Apr 01, 2002 at 19:28 UTC
    I liked Tom's Object-Oriented Tutorial for Perl. First time I found a real nice tutorial about oo in perl
Re: Perl Object Oriented Meta-Tutorial
by Krambambuli (Curate) on May 10, 2007 at 13:40 UTC
    There is another book from Damian Conway, Perl Best Practices that should be mentioned, I think.
    It contains a few chapter specifically targetted to OOP.
Re: Perl Object Oriented Meta-Tutorial
by edwardt_tril (Sexton) on Mar 17, 2006 at 17:46 UTC
    the missing url for perlreftut is:
Re: Perl Object Oriented Meta-Tutorial
by naikonta (Curate) on May 10, 2007 at 13:18 UTC
Re: Perl Object Oriented Meta-Tutorial
by programmer.perl (Beadle) on Jan 26, 2014 at 14:54 UTC

Log In?

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

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (8)
As of 2024-05-28 13:30 GMT
Find Nodes?
    Voting Booth?

    No recent polls found