Audience
System administrators and developers who want to use the power of the Perl language more fully.
Prerequisites
Students should have attended our Perl Programming Part 1 course, or have equivalent knowledge.
Duration
2 days. Hands on.
This course is available on site only. Please call for details.
Course Objectives
Perl is a mature, extremely flexible, general-purpose language, which is especially well suited to textual manipulation. In addition to its extensive built-in facilities, there are vast freely-accessible libraries of Perl code to help build almost every conceivable application.
This course builds on the techniques in Perl Programming - Part 1. It covers the more advanced programming and data structuring techniques provided by Perl, including references, modules and object-oriented techniques, suitable for high-level applications of all types.
Course Content
Review
Data types and their manipulation.
Control structures and subroutines.
Text manipulation.
Input/Output techniques.
References
Basics revisited.
Multidimensional arrays.
Reference types and ref() function.
Reference constructs.
Advanced data structure examples.
Sorting an array of references.
Subroutines
Reference passing and prototypes.
Subroutine pre-declaration.
Anonymous subroutines.
Call by reference.
Prototypes.
Overloaded functions?
Useful Standard Library Modules
Math modules.
Time modules.
Benchmark.pm.
Config.pm.
File/directory standard library modules.
File and Directory Manipulation
Emulating operating sytems commands.
Globbing and directory handles.
Packages and Modules
Namespaces and packages.
use and require.
Module semantics.
@INC array.
lib module.
File/directory standard library modules.
BEGIN...END blocks.
AUTOLOADing.
Object-oriented Programming
Background to object-orientation.
Accessing object methods.
Class methods and attributes.
bless() function.
The -> notation and variations.
Perl-style inheritance, @ISA special array.
Polymorphism.
Introduction to the tie command.
Private data via closures.
Regular Expressions.
Miscellaneous/Advanced Functions and Keywords
Random numbers.
eval.
bit manipulation.
pack and unpack.
Advanced array functions.
Other miscellaneous function.