1. Perl Essentials Review
Topics Not Reviewed (But Essential to Understand OOP in Perl)
References
Advanced Data Types
Typeglobs
Packages
Modules
Additional Resources
2. OO Primer
Introduction to OOP in Perl
Objects
Methods
Classes
Additional OO Terminology
Additional Resources
3. OO In Perl Essentials
The Basis of OOP in Perl
Class Creation
Method Creation
Object Creation
Calling Methods
Constructors
Accessors
Mutators
Affordances
Class Data
Class Modules
Using AUTOLOAD
Destructors
Additional Resources
4. Using Bless on Arrays and Scalars
Why Use Other Data Types?
Blessing Arrays
Pseudo-Hashes
Blessing Scalars
Additional Resources
5. Using Bless on REs, Subroutines and Typeglobs
Blessing Things Other Than Variables
Blessing Regular Expressions
Blessing Subroutines
Blessing Typeglobs
Additional Resources
6. Inheritance
Overview of Inheritance in Perl
Determining a Method’s Location
The @ISA Array Works
Inheritance in Other Languages
Perl “Built-In” Methods
Handling DESTROY Methods with Inheritance
The SUPER Class
Abstract Methods
Polymorphism
Additional Resources
7. Automating Class Creation
Automating Class Creation Essentials
Using Class::Struct to Crate Classes
Using Arrays Instead of Hashes
Attribute Types
Other Tools to Create Classes
Additional Resources
8. Ties
What are Ties?
Making a Tied Scalar
Making a Tied Array
Making a Tied Hash
Making a Tied Filehandle
Ties and Inheritance
9. Installing CPAN Modules
Introduction to the Concept of Overloading
Using overload.pm
How Your Overload Subroutines Will Be Called
Magic Autogeneration
Fallback
Additional Resources
10. Encapsulation
Overview of Encapsulation
Private Identifiers
Using Closures to Enforce Encapsulation
Other Methods of Encapsulation
Additional Resources