Skip Navigation Links

Course Length:
5 Days
Course Description:
The course begins with a thorough treatment of packages, modules, and libraries. Next, Perl references are studied. This gives students the necessary background to write object-oriented Perl. Various applications and areas that use object orientation are studied next. These modules include the Tk.pm module for building Graphical User Interfaces, the DBI.pm module, which provides a portable way of querying databases, the CGI.pm module for writing CGI programs, and the Socket.pm module used in client server networking applications. Finally a treatment of XML and Perl is undertaken.
Who Should Attend:
Programmers, end users, system administrators, network administrators, and CGI script writers should attend this course.
Benefits of Attendance:
Upon completion of this course, students will be able to:
  • Download, install, and use modules from the Comprehensive Perl Archive Network (CPAN).
  • Use the modules in the Standard Perl Distribution.
  • Write POD (Plain Old Documentation) sections of Perl modules.
  • Use Perl references to solve many programming problems including those problems involving arbitrarily complex data structures.
  • Distinguish among packages, modules, libraries, and classes and use each one effectively.
  • Write client/server applications using the Socket.pm module.
  • Write Graphical User Interfaces (GUIs) using the Tk.pm module.
  • Write Perl CGI (Common Gateway Interface) scripts.
  • Write Perl applications that make queries to real databases through the use of the DBI.pm module.
  • Write Perl applications that produce and process XML documents.
Prerequisites:
Participants should be well-versed in the fundamentals of Perl.
Course Outline:
  • Chapter 1: What You Should Already Know
    1. Introduction
    2. A Quick Review of Perl
    3. Perl Libraries
    4. The Standard Perl Library
    5. Packages
    6. Modules
    7. Using .pm Modules
    8. Exporter.pm
    9. Standard Perl Modules
    10. Comprehensive Perl Archive Network (CPAN)
    11. Roman.pm
    12. Miscellaneous Perl Topics - wantarray
  • Chapter 2: Associative Arrays
    1. Introduction
    2. Associative Arrays as Dual Arrays
    3. A Hashing Algorithm
    4. Collisions
    5. Associative Arrays
    6. Sorting by Keys or Values
    7. Finding Unique Tokens in a File
    8. Reverse Lookups
    9. Selecting the Top n Elements
  • Chapter 3: References
    1. Introduction
    2. Summary of References
    3. Array References
    4. Anonymous Arrays
    5. Anonymous Hashes
    6. Prototypes
    7. Higher Dimensional Arrays
    8. Complex Hashes
    9. References and Subroutines
    10. Anonymous Subroutines
    11. Lists of References
  • Chapter 4: Object-Oriented Programming
    1. Introduction
    2. Object-Oriented Vocabulary
    3. The class Definition
    4. Defining and Using Objects
    5. Information Hiding
    6. Instance Methods
    7. Destructors
    8. Class Methods
    9. Inheritance
    10. Polymorphism
    11. Documenting Perl Code
    12. IO.pm
  • Chapter 5: The TK.PM Module
    1. Introduction
    2. Event Driven Programming
    3. Geometry Management
    4. pack()
    5. grid()
    6. grid()Options
    7. place(): Absolute Coordinates
    8. place(): Relative Coordinates
    9. The Label Widget
    10. The Button Widget
    11. The Checkbutton Widget
    12. The Radiobutton Widget
    13. The Dialog Widget
    14. Text Input Widgets
    15. The Listbox Widget
    16. Menus
    17. Frames
    18. Toplevel Widgets
    19. Bind
  • Chapter 6: Client-Server Applications and CGI
    1. Introduction
    2. Internet Terminology
    3. Data Delivery
    4. Writing a Simple Client
    5. Writing a Simple Server
    6. Writing an Iterative Server
    7. ftp
    8. The Common Gateway Interface
    9. HTML Forms
    10. The CGI Environment
    11. Administering the Server
    12. The HTTP Protocol
    13. Header Information
    14. The CGI Script
    15. Extracting Form Data
    16. The CGI Response
    17. CGI Output
    18. Database Access
    19. What Can Go Wrong?
    20. Images
    21. Extra Path Information
  • Chapter 7: CGI.pm
    1. Using CGI.pm?
    2. Simple Form Elements
    3. Parameters
    4. HTML Tags
    5. Form Processing
    6. checkbox_group and radio_group
    7. Text Areas
    8. Popup Menus and Scrolling Lists
    9. Debugging
  • Chapter 8: Accessing Real Databases in Perl
    1. Introduction
    2. Architecture
    3. Review of SQL
    4. Accessing Databases from Perl
    5. Executing a Query in Perl
    6. Accessing Database Metadata
    7. Interactive Requests
    8. Adding a Graphical Front-End
    9. Accessing a Real Database via a Web Form
  • Chapter 9: XML Fundamentals
    1. Introduction
    2. What is a Markup Language?
    3. SGML vs. HTML
    4. Sample HTML Document
    5. XML
    6. Creating Semantic Tags
    7. XML Syntax
    8. Elements
    9. Attributes
    10. Comments
    11. Unicode and Character Sets
    12. Character References
    13. Entity References
    14. Character Data Sections (CDATA)
    15. Processing Instructions
    16. Parsing XML
  • Chapter 10: Processing XML With Perl
    1. Creating an XML Document With Perl
    2. Creating an XML Document
    3. Using an XML Parser
    4. XML::Simple
    5. XML::Parser
  • Appendix A: An HTML (P)review
    1. An HTML (P)review
    2. An HTML (P)review: Basics
    3. An HTML (P)review: Formatting Basics
    4. An HTML (P)review: Links
    5. An HTML (P)review: Forms