HOME
Current Schedule
Onsite Courses
Register Online
Request Brochure
Download Catalog
Distance Learning
What We're About
Contact ATI Courses
Search Site
Attendees Testimonials
The ATI FAQ Sheet
Suggestions/Wait List
New Courses for 2008
Become an ATI Instructor
Acoustics & Sonar
Rockets & Space
ATI Space News
ATI Site Map
ATI Staff Tutorials
ATI Sampler Page
 

Information Technology

ATI's Perl Programming Course

Summary:

    Perl is a scripting language which allows for rapid prototyping of projects formerly done with a programming language or a shell. It incorporates all the functionality of C (including a UNIX system interface), the Shells, grep, sed, and awk. The topics in the course will aid all computer users - from end user to programmer to administrator alike. Many in class labs support the course material.

Prerequisites:

    Some experience with either a programming language (preferably C), or any of the UNIX shells.

Who Should Attend:

    Programmers, end users, system administrators, network administrators, CGI script writers, or anybody who is interested in automating tasks but doesn't want to learn all the details of a full blown programming language.

Benefits of Attendance:

    Students will be able to write Perl scripts that:

    • Manipulate files and directories
    • Use the powerful regular expression capabilites of Perl
    • Generate awk like reports
    • Solve problems by using Perl's associative array capabilites
    • Take Advantage of Perl's powerful interface to UNIX and other Oses
    • Perform network communication including those tasks accomplished through CGI programming
    • Perform many system administration functions
    • Be able to use Perl to write CGI applications
    • Be able to use Modules from the Standard Perl distribution
    • Use Perl data structures and references
    • Use object orientation in Perl
    • Create objects and reuse classes

Course Outline:

    CHAPTER 1: A PERL TUTORIAL

    1. What is Perl?
    2. Where can I get Perl
    3. The first Perl program
    4. Simple I/O
    5. Perl variables
    6. Numbers
    7. Arrays
    8. Array functions
    9. Arrays and STDIN
    10. Control flow constructs
    11. Altering loop control flow
    12. Labeled Blocks for long breaks
    13. Statement modifiers
    14. What is true and what is false
    15. Associative arrays
    16. The special built in variable - $_
    17. Pattern matching and w/ regular expressions
    18. Writing your own functions

    CHAPTER 2: I/O IN PERL

    1. Introduction
    2. The print function
    3. The printf function
    4. The sprintf function
    5. Filehandles
    6. Opening disk files
    7. File open errors
    8. Closing files
    9. Opening pipe files
    10. Command line arguments
    11. File operators
    12. The stat operator
    13. The _ filehandle

    CHAPTER 3: PERL OPERATORS

    1. Introduction
    2. Table of Perl operators
    3. Assignment operators
    4. Special String operators
    5. Relation operators
    6. Logical operators
    7. Arithmetic operators
    8. The conditional expression
    9. The range operator
    10. Regular expression operators
    11. String operators

    CHAPTER 4: ARRAYS + ARRAY FUNCTIONS

    1. Introduction
    2. Assigning values to an array
    3. Subscripting
    4. Array functions
    5. push and pop
    6. shift
    7. sort, reverse, chop
    8. split, join
    9. splice
    10. Associative arrays
    11. Associative array functions
    12. Associative array example
    13. Built in associative arrays
    14. Reading from a file into an associative array

    CHAPTER 5: SUBROUTINES

    1. Subroutines
    2. Passing arguments to subroutines
    3. Returning values
    4. The require function
    5. @INC
    6. Packages
    7. Modules and use
    8. Typeglobs
    9. Predefined subroutines

    CHAPTER 6: DATA STRUCTURES

    1. References
    2. Higher Dimensional Arrays
    3. Complex Hashes
    4. References and Subroutines
    5. Linked Lists

    CHAPTER 7: ACCESSING SYSTEM RESOURCES

    1. Introduction
    2. File and directory system calls
    3. mkdir, chdir, and chown
    4. Opendir and readdir
    5. Link, unlink, rename
    6. Time stamps for disk files - stat and utime
    7. Process creation - fork
    8. exec and wait
    9. signals
    10. system

    CHAPTER 8: ODDS AND ENDS

    1. eval
    2. warn
    3. quoting
    4. Sorting with custom comparison functions
    5. here strings
    6. tr
    7. pack and unpack
    8. Regular Expressions
    9. Command Line Options
    10. Debugging
    11. The strict.pm module
    12. The -w flag
    13. The Perl debugger

    CHAPTER 9: GENERATING REPORTS WITH PERL

    1. Introduction
    2. Formats
    3. Multi-Line formats
    4. Filled Field formats
    5. Top of Page formatting
    6. The select operator
    7. Special Format Variables: $~, $^
    8. A sample report generator

    CHAPTER 10: CLIENT/SERVER APPLICATION USING TCP/IP

    1. Introduction
    2. Internetworking with TCP/IP
    3. Client/Server applications
    4. Perl functions for networking applications
    5. A simple client/server application
    6. Code for the client program
    7. Code for the server program
    8. Client/Server Programming using Socket.pm

    CHAPTER 11: A CGI PRIMER

    1. Introduction
    2. A typical form
    3. Web Servers & Web Clients
    4. HTML & HTML form tags
    5. CGI Input
    6. GET methods
    7. CGI Output
    8. Environment Variables
    9. Decoding form data

    CHAPTER 12: MODULES & OBJECT ORIENTED PROGRAMMING

    1. Perl Modules included with the distribution
    2. What is CPAN?
    3. Packages v.s Modules
    4. The use directive
    5. Importing and exporting symbols
    6. Object Oriented Programming
    7. Defining and creating objects
    8. Implementing information hiding
    9. Destructors
    10. Inheritance
    11. Polymorphism
    12. Documenting Perl code

Tuition:

    Tuition is $2000 per person at one of our scheduled public courses. Onsite pricing is available. Government personnel qualify for reduced rates. Please call us at 410-956-8805 or send an email to ati@ATIcourses.com.

Register Now Without Obligation