About the Book
Historically, programming hasn't been considered a critical skill for
biologists. But now, with access to vast amounts of biological data contained in
public databases, programming skills are increasingly in strong demand in
biology research and development. Perl, with its highly developed capacities in
string handling, text processing, networking, and rapid prototyping, has emerged
as the programming language of choice for biological data analysis.
Mastering Perl for Bioinformatics covers the core Perl language and many
of its module extensions, presenting them in the context of biological data and
problems of pressing interest to the biological community. This book, along with
Beginning Perl for Bioinformatics, forms a basic course in Perl
programming. This second volume finishes the basic Perl tutorial material
(references, complex data structures, object-oriented programming, use of
modules--all presented in a biological context) and presents some advanced
topics of considerable interest in bioinformatics.
The range of topics covered in Mastering Perl for Bioinformatics prepares
the reader for enduring and emerging developments in critical areas of
bioinformatics programming such as:
- Gene finding
- String alignment
- Methods of data storage and retrieval (SML and databases)
- Modeling of networks (graphs and Petri nets)
- Graphics (Tk)
- Parallelization
- Interfacing with other programming languages
- Statistics (PDL)
- Protein structure determination
- Biological models of computation (DNA Computers)
Biologists and computer scientists who have conquered the basics of Perl and are
ready to move even further in their mastery of this versatile language will
appreciate the author's well-balanced approach to applying Perl's analytical
abilities to the field of bioinformatics. Full of practical examples and
real-world biological problem solving, this book is a must for any reader
wanting to move beyond beginner level Perl in bioinformatics.
Related Books
Bioinformatics Books
(Bioinformatics
Books)
Table ofContents
Foreword
Preface
Part I. Object-Oriented Programming in Perl
1. Modular Programming with Perl
What Is a Module?
Why Perl Modules?
Namespaces
Packages
Defining Modules
Storing Modules
Writing Your First Perl Module
Using Modules
CPAN Modules
Exercises
2. Data Structures and String Algorithms
Basic Perl Data Types
References
Matrices
Complex Data Structures
Printing Complex Data Structures
Data Structures in Action
Dynamic Programming
Approximate String Matching
Resources
Exercises
3. Object-Oriented Programming in Perl
What Is Object-Oriented Programming?
Using Perl Classes (Without Writing Them)
Objects, Methods, and Classes in Perl
Arrow Notation (->)
Gene1: An Example of a Perl Class
Details of the Gene1 Class
Gene2.pm: A Second Example of a Perl Class
Gene3.pm: A Third Example of a Perl Class
How AUTOLOAD Works
Cleaning Up Unused Objects with DESTROY
Gene.pm: A Fourth Example of a Perl Class
How to Document a Perl Class with POD
Additional Topics
Resources
Exercises
4. Sequence Formats and Inheritance
Inheritance
FileIO.pm: A Class to Read and Write Files
SeqFileIO.pm: Sequence File Formats
Resources
Exercises
5. A Class for Restriction Enzymes
Envisioning an Object
Rebase.pm: A Class Module
Restriction.pm: Finding Recognition Sites
Drawing Restriction Maps
Resources
Exercises
Part II. Perl and Bioinformatics
6. Perl and Relational Databases
One Perl, Many Databases
Popular Relational Databases
Relational Database Definitions
Structured Query Language
Administering Your Database
Relational Database Design
Perl DBI and DBD Interface Modules
A Rebase Database Implementation
Additional Topics
Resources
Exercises
7. Perl and the Web
How the Web Works
Web Servers and Browsers
The Common Gateway Interface
Rebase: Building Dynamic Web Pages
Exercises
8. Perl and Graphics
Computer Graphics
GD
Adding GD Graphics to Restrictionmap.pm
Making Graphs
Resources
Exercises
9. Introduction to Bioperl
The Growth of Bioperl
Installing Bioperl
Testing Bioperl
Bioperl Problems
Overview of Objects
bptutorial.pl
bptutorial.pl: sequence_manipulation Demo
Using Bioperl Modules
Part III. Appendixes
A. Perl Summary
B. Installing Perl
Index
|