Compuware Perl Class Syllabus

Prepared by Bill Kilgallon, Bill@KilgallonFamily.com

Course Objectives

What this class hopes to accomplish.

Perl Resources

Resources for the Perl Student, and where to find them.

Running Perl

The basics of getting and running Perl.
  1. Running Perl Basics
  2. Automating Perl Execution
  3. Better Automation of Perl Execution

Scalar Variables and Operators

Simple variable types, what they are and what you can do with them.
  1. Scalar Numeric Literals
  2. Single Quoted String Literals
  3. Double Quoted String Literals
  4. Scalar Operators for Numbers
  5. Scalar Operators for Strings
  6. Operator Precedence and Associativity
  7. Converting Between Numbers and Strings
  8. Scalar Variables
  9. Scalar Operators and Functions
  10. Binary Assignment Operators
  11. Auto Increment and Auto Decrement
  12. Chop and Chomp
  13. String Interpolation
  14. Reading Standard Input
  15. Output with Print

Arrays and Hashes

Complex variable types, what they are and what you can do with them.
  1. Introduction to Perl Arrays
  2. Array Literal Representation
  3. Array Constructor Operator
  4. The Quote Word Function
  5. Array Variables
  6. Array Variable Assignment
  7. More Array Variable Assignment
  8. Even More Array Variable Assignment
  9. Array Element Access
  10. Yet More Array Element Access
  11. Pushing and Popping
  12. Shifting and Unshifting
  13. Reverse
  14. Sort
  15. Chomp
  16. Reading Standard Input
  17. Variable Interpolation of Arrays
  18. Hashes
  19. Literal Hash Representation
  20. Common Hash Functions: Keys
  21. Common Hash Functions: Values
  22. Common Hash Functions: Each
  23. Common Hash Functions: Delete
  24. Hash Slices

Control Structures

Different ways of controlling the flow of your program execution.
  1. Statement Blocks
  2. If and Unless
  3. While and Until
  4. Do While and Do Until
  5. For Loops
  6. Foreach
  7. Last
  8. Next
  9. Redo
  10. Labeled Blocks
  11. Expression Modifiers
  12. "&&" and "||" as Control Structures

Program Input and Output

Reading and writing files, and talking to other programs.
  1. Program Input and Output
  2. Reading from the Diamond Operator
  3. Writing to standard out
  4. Using Printf
  5. File Handles
  6. Opening and Closing File Handles
  7. Die
  8. Using Filehandles
  9. The -x file tests
  10. System and Exec
  11. More Secure System Calls
  12. Backquotes
  13. Processes as Filehandles
  14. Fork

Regular Expressions

How to use pattern matching to replace pages of code with a single command.
  1. Concepts and Editorials
  2. Matching (contains)
  3. Match Patterns ("[]")
  4. Negation and Predefined Character Classes
  5. Examples
  6. Match Patterns ("*")
  7. Match Patterns ("+")
  8. Match Patterns ("?")
  9. Match Anchors ("^")
  10. Match Anchors ("$")
  11. Multipliers
  12. Parentheses as Memory
  13. Alternation
  14. Ignoring Case
  15. Variable Interpolation of Match Expressions
  16. More Magic Variables
  17. Substitutions
  18. Split
  19. Join
  20. Real World Example (1)
  21. Real World Example (2)
  22. Real World Example (3)
  23. Real World Example (4)
  24. Real World Example (5)
  25. Homework Three

Functional Decomposition

How to break up your program with the use of packages and subroutines, and how to use variable scoping effectively.
  1. Introduction
  2. Function Global Scoping
  3. Function Local (my) Scoping
  4. Function Local (local) Scoping
  5. Functional Decomposition
  6. Function Return Values
  7. Homework Four

References

How to store and use the location of scalars, arrays, and hashes.
  1. Introduction
  2. References to Scalars
  3. References to Arrays
  4. References to Hashes
  5. Sample Program

Report Generation

How to use Perl to easily generate great looking reports.

Database Access

Perls built in database capability and how to use it for simple tasks (overview).
  1. Making Hashes Persistent
  2. Opening a DBM Hash
  3. Using a DBM Hash
  4. Closing a DBM Hash
  5. Excercise

CGI Programming

Perls built in CGI capabilities, and how to use them for simple tasks (overview).
  1. HTML Background
  2. HTML Hello World
  3. Using the Perl CGI Module
  4. Simple Perl CGI Constructs
  5. Excercise

Next: Course Objectives