O'Reilly Open Source Convention
oreilly.comO'Reilly Network
ConferencesSoftwareInternational


Arrow Home
Arrow Registration
Arrow Hotel/Travel
Arrow See & Do
Arrow Tutorials
Arrow Sessions
Arrow Evening Events
Arrow BOFs
Arrow Speakers
Arrow Press
Arrow Mail List
Arrow Exhibitors
Arrow Sponsors
Innovate--Collaborate--Discover
O'Reilly Open Source Convention
Sheraton San Diego Hotel, San Diego, CA
July 23-27, 2001

News Coverage

Tutorial

Advanced Object-Oriented Perl

Damian Conway, Thoughtstream

Track: Perl Conference 5
Date: Tuesday, July 24
Time: 8:45am - 5:15pm
Location: Grande Ballroom C

Target audience:
Perl programmers who have a basic familiarity with simple OO Perl (i.e. blessed hashes).

What attendees will learn:
This tutorial will show you how to build on the basic object-oriented Perl techniques you already know and unlock more of the power of Perl's OO capabilities.

You will learn:

  • how to use pseudo-hashes and the standard fields.pm and base.pm modules;
  • how (and when) to bless arrays and scalars;
  • three different ways to implement data hiding for Perl objects (including the Tie::SecureHash module);
  • how Perl implements inheritance and polymorphism (and how you can change the rules of either);
  • how to simulate scalars and hashes using ties;
  • the features (and traps) of operator overloading in Perl;
  • easy ways to build complete classes (semi-)automatically;
Tutorial outline:
  • Revision of Perl OO basics
    • packages, references, blessing
    • the three rules
  • Non-hash-based objects
    • arrays as objects
    • scalars as objects
  • Pseudo-hashes
    • what they are, how to use them as objects
    • the fields.pm module
    • compile-time type checking
  • Automating class construction
    • Class::Struct
    • Other modules
  • Inheritance
    • revision of concepts
    • how they work in Perl
    • @ISA, isa(), can(), SUPER
    • tricks with inherited constructors and destructors
    • abstract methods
    • attribute collisions
    • inheritance and pseudohashes: the base.pm module
  • Polymorphism
    • what it is
    • when and how to use it
  • Encapsulation
    • the pros and cons of data hiding
    • encapsulation via closures
    • encapsulation via scalars
    • encapsulation via the Tie::SecureHash module
  • Ties
    • mechanism
    • simulating scalars
    • simulating hashes
  • Operator overloading
    • overview and limitations of mechanism
    • overloading operations, conversions, and constants
    • problems with references

oreilly.com Home | Conferences Home | Open Source Convention Home
Registration | Hotels/Travel | Tutorials | Sessions | Speakers
Press | Mail List | Exhibitors | Sponsors


© 2001, O'Reilly Media, Inc.
conftech@oreilly.com