Advanced Perl Programming
Course
Online
Price on request
Description
-
Type
Course
-
Methodology
Online
A course in Advanced Perl programming for those with a basic knowledge of the language and a desire to extend their skills. Delegates should have been using Perl for at least several months.
Reviews
Have you taken this course?
Subjects
- Perl
- IT
- Programming
Course programme
Advanced Regular Expressions
- Summary of Using Regular Expressions
- Reminder of Regular Expression Syntax
- Different Quote Symbols Revision
- Quoting Lists Revision q, qq, s///, and m//
- Writing Regexps More Clearly
- Further Regexp Syntax
- Word Boundaries
- Grouping
- Line Boundaries
- Zero-Width Lookahead Assertions
- Lookbehind Assertions
- Any Character
- Alternation
- Grouping and Backreferences
- Capturing
- Optional Parts of Patterns
- Matching an Exact Number
- Non-Greedy Quantifiers
- Finding Multiple Matches
- Dynamically Making Replacement Text
- Advanced Miscellaneous Things 0 but true
- Trapping Run-Time Errors
- Executing Code Fragments in Strings
- Secret Subroutines
- Static Variables
- Interpolating Expression Evaluation into Strings
- Pre-Sizing Array and Hash Variables
- Named Arguments to a Subroutine
- Named Arguments Example
- Coercing Subroutine Arguments
- Disadvantages of Prototypes
- Determining Argument Types
- Determining Return Types
- Slices of Array and Hashes deleteing Array & Hash Elements
- Benchmarking Portions of Code
- Magic Constants
- Dates and Times in Perl
- Time Keeping Concepts
- Built-in Time Functions
- POSIX Functions
- The Time Zone
- The DateTime Modules
- Creation of DateTime Objects
- Obtaining Dates
- Comparing Dates
- Adding Intervals to Dates
- Execution Time
- Xml as a Data Storage and Transfer Format Xml::Simple
- Reading an Xml File Back in Xml::Simple Options
- KeyAttr Example
- KeyAttr Result XML::DOM
- Reading in a CSV File
- Perl Modules
- Using Modules
- Standard Modules
- CPAN Modules
- Why Effective Perl Programmers are Efficient CPAN Users
- Finding Modules on CPAN
- Installing Modules
- The cpan Command
- Finding Installed Modules
- Writing Perl Modules
- Perl Module Boilerplate
- Perl Module Boilerplate Explained
- Defining Functions in Modules
- Exporting Functions
- Exporting Functions - II
- Module Variables
- The Exporter
- Module Initialization
- Versions POD Plain Old Documentation File::Copy File::Find Text::Wrap
- Object-Oriented Perl
- Example Class Use
- Example Class Use: Explanation
- Example Class Implementation
- Class Implementation: Explanation
- Class Constructor Explanation
- Constructors
- What Defines a Constructor?
- Object Methods
- Implementing Object Methods
- Accessing Object Properties
- Interpolating Object Properties and Methods in Strings
- Class Names and File names
- Destructors
- Static Methods
- Dual-Purpose Class & Object Methods
- Inheriting from Other Classes
- Inheriting from Other Classes II
- Inheritance Details
- Singleton Objects
- Example Class: CGI::Page CGI::Page Implementation
- Using CGI::Page CGI::Page Class Definition CGI::Page emit Method CGI::Page cgi Method CGI::Page Summary
- Multiple Inheritance
- Method Lookup
- The UNIVERSAL Base Class
- Autoloading Methods
- Accessor Methods
- Autoloading Accessor Methods AUTOLOAD Caveats
- Method Lookup and AUTOLOAD AUTOLOAD for Fast Startup
- Automatic Loading of Modules
- Operator Overloading
- Which Operators to Overload
- Example: MyTime
- Cloning of Objects
- Connecting Methods to Operators
- Comparison Operator
- Tying Variables to Modules
- Making a tie-Compatible Module
- Tieing Hashes to Files
- Example: Caseless Hash
- Implementing Tie Modules
- Network Name Services
- Network Name Services: the hosts File
- Parsing the hosts File
- NIS
- Querying NIS with Net::NIS
- Iterating Over NIS Maps with Net::NIS
- Caveats for Net::NIS
- DNS
- DNS Zone Files
- Automating Zone File Generation
- Using Perl to Generate Zone Files
- DNS Queries from Perl
- DNS Server Consistency Checking
- Deciding How to Make DNS Queries
- Using nslookup to Make DNS Queries
- Using Net::DNS to Make DNS Queries
- Directory Services
- WHOIS
- Making WHOIS Queries from Perl
- LDAP: Lightweight Directory Access Protocol
- An LDAP Query with Perl
- ADSI: Active Directory Service Interfaces
- ADSI from Perl with Win32::OLE
- Internet Mail
- Sending Mail
- Sending Mail: sendmail on Unix
- Sending Mail: MAPI on Windows
- Sending Mail: Choosing a Perl Module
- Sending Mail: Using Mail::Mailer
- Related Modules
- Objectives
- Berkeley Sockets
- Socket Domains and Types
- Addresses and Port Numbers
- Servers and Clients
- A Simple Client
- A Simple Client Explained
- Higher Level Socket Modules
- TCP Servers with IO::Socket
- TCP Server Explained
- UDP Clients and Servers
- Receive UDP Message
- UDP Explained
- Unix Domain Sockets
- Multi Client Servers - Forking
- Multi Client Servers - Forking Example
- Multi Client Servers - Select
- Multi Client Servers - Select Example Net::FTP — File Transfer Protocol
- LWP - Library for WWW in Perl
- LWP - Automatic Form Filling
- Logging with Perl
- Uses of Logs
- Analyzing Logs
- Parsing Text Logs
- Web Access Logs
- Extended Common Log Format
- Reading utmp Files
- Example of Using User::Utmp
- Reading Windows Event Logs
- Writing Logs
- Example Logging Function
- Using Unix syslog
- Using Sys::Syslog
- Rotating Log Files
- Logging with a Database
- Logging Related Modules
- User Identity Concepts
- User Information Under Unix
- Unix User Information from Perl: Lookup
- Unix User Information from Perl: Iteration
- Unix Group Information from Perl
- Unix User Information: Another Way
- User Information Under Windows
- User Groups Under Windows
- Windows User Information from Perl
- User Info from Win32::AdminMisc
- Changing User Information
- Process Control
- Unix Process Concepts
- Process Information Under Unix
- Using Proc::ProcessTable
- Windows Process Concepts
- Process Handles
- Scheduling Events
- Filesystem Quotas
- Monitoring User Activity: Unix
- Monitoring User Activity: Windows
- Modules for Users and Processes
- Modules for Filesystems
- Spotting Unexpected Activity
- Detecting Attempts to Guess Passwords
- Searching for Suspicious Files
- Example of Finding Suspicious Files
- Detecting Changes in Important Files
- Making MD5 Checksums
- Example of Checking Files
- Using SNMP
- General Advice
- Existing Security Tools
- Security Related
- Interesting Web Links
Advanced Perl Programming
Price on request