Advanced Perl Programming
(PERLA, Live Instructor-Led Training, 4 days)


Description

This SETC Certified course provides seasoned PERL programmers with skills that allow them to perfect their scripts. Included is coverage of modules, references, advanced regular expressions and text manipulation and a few other tips and tricks. In addition, the course discusses the use of PERL in connecting to networks and relational databases. This is the PERL course for those people who live and breathe PERL.

Dates and Pricing


Jan 23 to Jan 26, 2018$2,500/person Feb 20 to Feb 23, 2018$2,500/person Mar 20 to Mar 23, 2018$2,500/person

Outline

Introduction
Perl Benefits and Drawbacks
The Perl Environment
The Perl Lifecycle
The PERL Application Structure
About Scope, Packages and Modules
Running Perl Code
Debugging Perl Code
Accessing Documentation and Help
Using and Importing Modules
The Standard Distribution
Using Modules
Functional Interfaces
Selecting What to Import
Object-Oriented Interfaces
The Comprehensive Perl Archive Network
Installing Modules from CPAN
Setting the Path
Lists and Arrays
Accessing the Elements of an Array
Special Array Indices
List Literals
List Assignment
Interpolating Arrays into Strings
The foreach Control Structure
Scalar and List Context
<STDIN> in List Context
Working with Subroutines
Defining a Subroutine
Invoking a Subroutine
Return Values
Arguments
Private Variables in Subroutines
Variable-Length Parameter Lists
About Lexical (my) Variables
The use strict Pragma
The return Operator
Non-scalar Return Values
Persistent, Private Variables
Input and Output
Input from Standard Input
Input from the Diamond Operator
The Invocation Arguments
Output to Standard Output
Formatted Output with printf
Filehandles
Opening a Filehandle
Fatal Errors with die
Using Filehandles
Reopening a Standard Filehandle
Output with say
Hashes
What Is a Hash?
Hash Element Access
Hash Functions
Typical Use of a Hash
The %ENV hash
Working with Regular Expressions
What Are Regular Expressions?
A Simple Example
Understanding Character Classes
Matches with m//
Option Modifiers
Working with Anchors
The Binding Operator, =~
Interpolating into Patterns
The Match Variables
General Quantifiers
Precedence
Processing Text
Substitutions with s///
The split Operator
The join Function
m// in List Context
Regular Expressions
Processing Text with sed
Processing Text with awk
Input and Output with File Handles
File IO Overview
About IO Operations and the Filehandles Data Type
Manipulating Directories
Opening a File
Reading File Data
Writing to a File
Dealing with Complex Data Structures
Performance Considerations
Process Management
The system Function
The exec Function
Environment Variables
Using Backquotes to Capture Output
Processes as Filehandles
Using Fork
Sending and Receiving Signals
Introduction to References
Performing the Same Task on Many Arrays
Taking a Reference to an Array
Dereferencing the Array Reference
Modifying the Array
Nested Data Structures
Simplifying Nested Element References with Arrows
References to Hashes
About File-handle References
About Subroutine References
Introducing OO Programming with PERL
What is an Object?
Using Objects in Perl
Creating Classes
Creating Properties
Creating Methods
About Constructors
About Destructors
Network Programming with PERL
Network Programming Fundamentals
Installing the Right Modules
Making a Connection
Working with IO::File, IO::Handle, and IO::Socket
Working with Sockets
Working with Net::Ftp, Net::Telnet, Net::SMTP
Working with LWP
Working with HTML::Parser
Database Programming
Database Programming Overview
Understanding Handles
Connecting to the Database
Creating a SQL Query
Reading the Results
Updating the Database
About Transaction Management
About Error Checking in DBI
Using Parameterized Statements
Statement Handle Attributes
Other Handle Attributes
Working with BLOBs and LONGs