Perl Programming on Unix
Perl has been described as C, awk, sed, and shell programming all wrapped into one language.
This Perl Programming Course is an intensive 5-day, hands-on Perl programming course, where 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.
Perl Programming on Unix – PRL101 – 5 days Request a Class Date
In this intense, 5-day, hands-on programming course, you will learn how to take advantage of Perls power through examples and extensive exercises.
Additional Multi-Enrollment Discounts Available at Check-Out
Course ID: PRL101 Duration: 5 days
Audience: Programmers and system administrators.
Topics Covered Perl Programming on Unix Course:
- 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 Multi-tasking 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