• Decrease font size
  • Default font           size
  • Increase font size

Perl Programming

Print E-mail
Course Length - 5 Days
 
Course Description

 Perl has been described as C, awk, sed, and shell programming all wrapped into one language. In this intense, 5-day, hands-on programming course, you will learn how to take advantage of Perl's power through examples and extensive exercises. Arrays and hashes, I/O, regular expressions, subroutines, and complex data structures are covered in depth. The course also introduces object-oriented programming in Perl, as well as UNIX multi-tasking and Perl sockets programming.

 

Course Prerequisites

  • Fundamentals of UNIX.
  • Experience in a high-level programming language, such as C, C++, or Java, is strongly recommended.
 

Who Should Attend?

Programmers and system administrators.

 

Course Outline:

Overview of Perl
 
  • What is Perl?
  • Running Perl Programs
  • Sample Program
  • Another Sample Program
  • Yet Another Example
Perl Variables
 
  • Three Data Types
  • Variable Names and Syntax
  • Variable Naming
  • Lists
  • Scalar and List Contexts
  • The Repetition Operator
Arrays and Hashes
 
  • Arrays
  • Array Functions
  • The foreach Loop
  • The @ARGV Array
  • The grep Function
  • Array Slices
  • Hashes
  • Hash Functions
  • Scalar and List Contexts Revisited
Quoting and Interpolation
 
  • String Literals
  • Interpolation
  • Array Substitution and Join
  • Backslashes and Single Quotes
  • Quotation Operators
  • Command Substitution
  • Here Documents
Operators
 
  • Perl Operators
  • Operators, Functions and Precedence
  • File Test Operators
  • Assignment Operator Notations
  • The Range Operator
Flow Control
 
  • Simple Statements
  • Simple Statement Modifiers
  • Compound Statements
  • The next, last, and redo Statements
  • The for Loop
  • The foreach Loop
I/O: Input Operations and File I/O
 
  • Overview of File I/O
  • The open Function
  • The Input Operator
  • Default Input Operator
  • The Print Function
  • Reading Directories
Regular Expressions
 
  • Pattern Matching Overview
  • The Substitution Operator
  • Regular Expressions
  • Special Characters
  • Quantifiers (*, +, ?, {})
  • Assertions (^, $, \b, \B)
Advanced Regular Expressions
 
  • Substrings
  • Substrings in List Context
  • RE Special Variables
  • RE Options
  • Multi-line REs
  • Substituting with an Expression
  • Perl RE Extensions
Subroutines
 
  • Overview of Subroutines
  • Passing Arguments
  • Private Variables
  • Returning Values
References
 
  • References
  • Creating References
  • Using References
  • Passing References as Arguments to Subroutines
  • Anonymous Composers
  • The Symbol Table
Complex Data Structures
 
  • Two-dimensional Arrays in Perl
  • Anonymous Arrays and Anonymous Hashes
  • Arrays of Arrays
  • Arrays of References
  • A Hash of Arrays
  • A Hash of Hashes
  • And So On...
Packages and Modules
 
  • Packages
  • BEGIN and END Routines
  • require vs. use
  • Modules
  • The bless Function
Introduction to Object-Oriented Programming in Perl
 
  • What is Object-Oriented?
  • Why Use Object-Oriented Programming?
  • Classes, Objects, and Methods in Perl
  • Inheritance, the "is-a" Relationship
  • Containment, the "has-a" Relationship
  • Overloaded Operators
  • Destructors
Binary Data Structures
 
  • Variable-Length (Delimited) Fields
  • Variable vs. Fixed
  • Handling Binary Data
  • The pack Function
  • The unpack Function
  • The read Function
  • C Data Structures
Multitasking with Perl
 
  • What are Single and Multitasking?
  • UNIX Multitasking Concepts
  • Process Creation with fork
  • Program Loading with exec
  • File Descriptor Inheritance
  • How UNIX Opens Files
  • One-Way Data Flow - Pipes
  • Example
  • Final Result - Page Viewing
Sockets Programming in Perl
 
  • Clients and Servers
  • Ports and Services
  • Berkeley Sockets
  • Data Structures of the Sockets API
  • Socket System Calls
  • Generic Client/Server Models
  • A Client/ServerExample
  • A Little Web Server
Appendix A - The Perl Distribution
 
  • Where Can You Get Perl?
  • How Do You Build Perl?
  • What Gets Created and Installed?
  • Differences Between Platforms
Appendix B - The Perl Debugger
 
  • Overview of the Perl Debugger
  • Debugger Commands
  • Non-Debugger Commands
  • Listing Lines
  • Single Stepping
  • Setting and Clearing Breakpoints
  • Modifying the Debugger
  • The -w and -D Flags