We covered several ways to test Perl scripts and
modules, focusing mostly on Test::More. We also discussed
an interesting technique to make a script testable as a module.
We began a rapid dive into Object Oriented
programming in Perl. We started with the basics of what constitutes
object oriented programming (OOP). Then, we covered how these
concepts are implemented with Perl. The session should be just
enough to get you started in OOP with Perl.
Wade gave a brief introduction to the Perl DBI. The
DBI is Perl's new modular relational database framework. We discussed
how to call the DBI for a particular RDBMS, a little SQL overview, and
some of the ways to extract data with DBI.
Wade gave a quick introduction to Perl/TK. We
walked through building a simple GUI and covered a few techniques for
making Perl/Tk programs more maintainable.
We got into CGI.pm since we had covered the basics
of what you could do with TT2 without using CGI, so we covered
enough of CGI.pm to allow continued exploration of TT2 if
desired.
This presentation was a grab-bag of some important
features of the language, including statement modifiers, loop control,
regular expression options, and the map operator.
The standard Perl distribution comes with a large
number of goodies in the form of standard modules. Although there was
not enough time to cover all of these modules in depth, Chuck did
cover many of the most useful modules.
As you should expect from Perl, there are several
ways to process command line options. Chuck covers several methods
from manual processing through several modules that provide better
interfaces.
Although the focus of the presentation was
benchmarking, Chuck covered other topics such as the
DATA file handle and the differences between
our and my variables.
One of the places that Perl really shines is
on the command line. Although most of the Perl code you write will
live in programs, Perl makes it easy to solve quick problems with
command line parameters. Chuck covers the most commonly needed command
line options and some operators that are particularly useful in this
mode.