Advanced Perl

Have Queries? Ask us +91 72592 22234

Course Overview


During the lecture and lab portions of the Advanced Perl training course, you will learn how to write Perl code that makes use of best practices in Perl, and can therefore more easily be used by others. This includes using the built-in features of the language as well as learning and applying common approaches that make code more debug-able. Along with learning perl best practices, you will also learn how to write object-oriented perl programs, proper packing techniques in support of deployable products, and how to integrate Perl with C/C++ code.

Course Content


Review of Perl Concepts   

  • Environment requirements
  • Perl development process
  • Debugging
  • Warnings
  • Diagnostic Messages
  • Carping, Confessing, and Croaking
  • Strict Checks
  • Compiler Pragmas
  • Debugging Flags
  • Your Perl Configuration
  • The Devel::Peek Module
  • The Data::Dumper Module

List Manipulation   

  • grep Operator
  • Lists, Arrays, and List Operators
  • Context
  • Context and Subroutines
  • Initializing Arrays and Hashes
  • Reference Syntax
  • Auto-vivification
  • Defined Values
  • Other List Operators
  • Usage of map, grep, and foreach

Blocks and Code References   

  • Blocks
  • Subroutines
  • Subroutine Prototypes
  • Code Refs and Anonymous Subroutines
  • Typeglobbing for the Non-Squeamish
  • Local (Dynamic) Variables
  • Lexical Variables
  • Persistent Private Subroutine Variables
  • Closures
  • ClosuresThe eval Operator
  • The Block Form of eval
  • The String Form of eval
  • Block Form of eval for Exception Handling

Packages   

  • Review of Packages
  • BEGIN and END Blocks
  • Symbol Tables
  • Package Variables
  • Calling Package Subroutines
  • Importing Package Symbols
  • Exporting Package Symbols
  • Using the Exporter Package
  • The use Function
  • AUTOLOAD and @ISA
  • AutoLoader and SelfLoader

Objects and Classes   

  • Object-Oriented Stuff
  • Making Perl Object-Oriented
  • References
  • The bless Function
  • So, What's a Blessed Thing Good For?
  • Calling Class and Object Methods
  • Object Methods
  • Writing Classes
  • Constructors
  • Inheritance
  • What Perl Doesn't Do

Tied Variables   

  • Why Use tie?
  • Tying a Scalar
  • Inside Tied Variables
  • untie
  • Another Tied Scalar Example
  • Tying an Array
  • A Tied Array Example
  • Tying Hashes
  • Tie::Hash and Tie::Array
  • Tying Filehandles
  • What Are DBM, NDBM, GDBM, SDBM, etc?
  • Using the DBM Modules

Installing and Using Perl Modules   

  • Laziness, Impatience, and Hubris
  • CPAN
  • Using Modules
  • Installing a Perl Module
  • Unpacking the Module Source
  • The Configuration Step
  • The Build Step
  • The Test Step
  • The Install Step
  • Using CPAN.pm
  • Using Module Documentation

Introduction to DBI/DBD   

  • The Old Way - DBPerls
  • A Better Way - DBI/DBD
  • Database Programming
  • Handles
  • Connecting to the Database
  • Creating a SQL Query
  • Getting the Results
  • Updating Database Data
  • Transaction Management
  • Finishing Up

DBI/DBD SQL Programming   

  • Error Checking in DBI
  • Getting Connected
  • Drivers
  • Using Parameterized Statements
  • Statement Handle Attributes
  • Other Handle Attributes
  • Column Binding
  • The do Method
  • BLOBs and LONGs and Such
  • Installing DBI Drivers

Module Development and Distribution   

  • Distributing Modules
  • Get Started with h2xs
  • Files Created by h2xs
  • The Build Library (blib) Directory
  • Unit Testing and test.pl
  • Versions
  • Using blib
  • POD
  • POD Translators
  • Cutting a Distribution
  • Other Niceties
  • Makefile.PL

Design and Implementation   

  • Think First
  • Object-Oriented Design
  • Object-Oriented Development
  • Library Modules
  • Utility Programs
  • Filters
  • Performance
  • Timing with Benchmark

Customer Reviews


Thanks to Xpertised and the tutor who walked me through all the topics with Practical exposure which is helping me in my current project.
-Waseem

Course was quite helpful in terms of understanding of concepts and practicality. Its really a very friendly environment to learn. The timing were mutually chosen, as we both are working professional. I am quite satisfied with the course.
-Tanmoy

...more
Share:

For Batch Details
Call us at: +91 7259222234

Not sure? Consult Our Experts

Looking for a Training for

Myself

My Team/Organization

I agree to be contacted over mail or phone

or
Call us at: +91 7259222234