Many programmers code by instinct, relying on convenient habits or a "style" they picked up early on. They aren't conscious of all the choices they make, like how they format their source, the names they use for variables, or the kinds of loops they use. They're focused entirely on problems they're solving, solutions they're creating, and algorithms they're implementing. So they write code in the way that seems natural, that happens intuitively, and that feels good. But if you're serious about your profession, intuition isn't enough. Perl Best Practices author Damian Conway explains that rules, conventions, standards, and practices not only help programmers communicate and coordinate with one another, they also provide a reliable framework for thinking about problems, and a common language for expressing solutions. This is especially critical in Perl, because the language is designed to offer many ways to accomplish the same task, and consequently it supports many incompatible dialects. With a good dose of Aussie humor, Dr. Conway (familiar to many in the Perl community) offers 256 guidelines on the art of coding to help you write better Perl code--in fact, the best Perl code you possibly can. The guidelines cover code layout, naming conventions, choice of data and control structures, program decomposition, interface design and implementation, modularity, object orientation, error handling, testing, and debugging. They're designed to work together to produce code that is clear, robust, efficient, maintainable, and concise, but Dr. Conway doesn't pretend that this is the one true universal and unequivocal set of best practices. Instead, Perl Best Practices offers coherent and widely applicable suggestions based on real-world experience of how code is actually written, rather than on someone's ivory-tower theories on howsoftware ought to be created. Most of all, Perl Best Practices offers guidelines that actually work, and that many developers around the world are already using. Much like Perl itself, these guidelines are about helping you to get your job done, without getting in the way. Praise for Perl Best Practices from Perl community members: "As a manager of a large Perl project, I'd ensure that every member of my team has a copy of Perl Best Practices on their desk, and use it as the basis for an in-house style guide."-- Randal Schwartz "There are no more excuses for writing bad Perl programs. All levels of Perl programmer will be more productive after reading this book."-- Peter Scott "Perl Best Practices will be the next big important book in the evolution of Perl. The ideas and practices Damian lays down will help bring Perl out from under the embarrassing heading of "scripting languages". Many of us have known Perl is a real programming language, worthy of all the tasks normally delegated to Java and C++. With Perl Best Practices, Damian shows specifically how and why, so everyone else can see, too."-- Andy Lester "Damian's done what many thought impossible: show how to build large, maintainable Perl applications, while still letting Perl be the powerful, expressive language that programmers have loved for years."-- Bill Odom "Finally, a means to bring lasting order to the process and product of real Perl development teams."-- Andrew Sundstrom "Perl Best Practices provides a valuable education in how to write robust, maintainable Perl, and is a definitive citation source when coaching other programmers."-- Bennett Todd"I've been teaching Perl for years, and find the same question keeps being asked: Where can I find a reference for writing reusable, maintainable Perl code? Finally I have a decent answer."-- Paul Fenwick"At last a well researched, well thought-out, comprehensive guide to Perl style. Instead of each of us developing our own, we can learn good practices from one of Perl's most prolific and experienced authors. I recommend this book to anyone who prefers getting on with the job rather than going back and fixing errors caused by syntax and poor style issues."-- Jacinta Richardson"If you care about programming in any language read this book. Even if you don't intend to follow all of the practices, thinking through your style will improve it."-- Steven Lembark"The Perl community's best author is back with another outstanding book. There has never been a comprehensive reference on high quality Perl coding and style until Perl Best Practices. This book fills a large gap in every Perl bookshelf."-- Uri Guttman
Author: Mark Jason Dominus
Release Date: 2005-03-31
Most Perl programmers were originally trained as C and Unix programmers, so the Perl programs that they write bear a strong resemblance to C programs. However, Perl incorporates many features that have their roots in other languages such as Lisp. These advanced features are not well understood and are rarely used by most Perl programmers, but they are very powerful. They can automate tasks in everyday programming that are difficult to solve in any other way. One of the most powerful of these techniques is writing functions that manufacture or modify other functions. For example, instead of writing ten similar functions, a programmer can write a general pattern or framework that can then create the functions as needed according to the pattern. For several years Mark Jason Dominus has worked to apply functional programming techniques to Perl. Now Mark brings these flexible programming methods that he has successfully taught in numerous tutorials and training sessions to a wider audience. * Introduces powerful programming methods new to most Perl programmers that were previously the domain of computer scientists * Gradually builds up confidence by describing techniques of progressive sophistication * Shows how to improve everyday programs and includes numerous engaging code examples to illustrate the methods
In its first five years of existence, The Perl Journal ran 247 articles by over 120 authors. Every serious Perl programmer subscribed to it, and every notable Perl guru jumped at the opportunity to write for it. TPJ explained critical topics such as regular expressions, databases, and object-oriented programming, and demonstrated Perl's utility for fields as diverse as astronomy, biology, economics, AI, and games. The magazine gave birth to both the Obfuscated Perl Contest and the Perl Poetry contest, and remains a proud and timeless achievement of Perl during one of its most exciting periods of development.Computer Science and Perl Programming is the first volume of The Best of the Perl Journal, compiled and re-edited by the original editor and publisher of The Perl Journal, Jon Orwant. In this series, we've taken the very best (and still relevant) articles published in TPJ over its 5 years of publication and immortalized them into three volumes. This volume has 70 articles devoted to hard-core computer science, advanced programming techniques, and the underlying mechanics of Perl.Here's a sample of what you'll find inside: Jeffrey Friedl on Understanding Regexes Mark Jason Dominus on optimizing your Perl programs with Memoization Damian Conway on Parsing Tim Meadowcroft on integrating Perl with Microsoft Office Larry Wall on the culture of Perl Written by 41 of the most prominent and prolific members of the closely-knit Perl community, this anthology does what no other book can, giving unique insight into the real-life applications and powerful techniques made possible by Perl.Other books tell you how to use Perl, but this book goes far beyond that: it shows you not only how to use Perl, but what you could use Perl for. This is more than just The Best of the Perl Journal -- in many ways, this is the best of Perl.
Author: brian d foy
Publisher: "O'Reilly Media, Inc."
Release Date: 2014-01-09
Take the next step toward Perl mastery with advanced concepts that make coding easier, maintenance simpler, and execution faster. Mastering Perl isn't a collection of clever tricks, but a way of thinking about Perl programming for solving debugging, configuration, and many other real-world problems you’ll encounter as a working programmer. The third in O’Reilly’s series of landmark Perl tutorials (after Learning Perl and Intermediate Perl), this fully upated edition pulls everything together and helps you bend Perl to your will. Explore advanced regular expressions features Avoid common problems when writing secure programs Profile and benchmark Perl programs to see where they need work Wrangle Perl code to make it more presentable and readable Understand how Perl keeps track of package variables Define subroutines on the fly Jury-rig modules to fix code without editing the original source Use bit operations and bit vectors to store large data efficiently Learn how to detect errors that Perl doesn’t report Dive into logging, data persistence, and the magic of tied variables
Author: Curtis Poe
Publisher: John Wiley & Sons
Release Date: 2012-09-27
Everything beginners need to start programming with Perl Perl is the ever-popular, flexible, open source programming language that has been called the programmers’ Swiss army knife. This book introduces Perl to both new programmers and experienced ones who are looking to learn a new language. In the tradition of the popular Wrox Beginning guides, it presents step-by-step guidance in getting started, a host of try-it-out exercises, real-world examples, and everything necessary for a Perl novice to start programming with confidence. Introduces Perl to both new programmers and experienced ones who want to learn a new language Provides a host of real-world applications for today's environments so readers can get started immediately Covers the new features of Perl but fully applicable to previous editions Beginning Perl provides the information and instruction you need to confidently get started with Perl. For Instructors: Classroom and training support material are available for this book.
Author: Randy J. Ray
Publisher: O'Reilly Media
Release Date: 2003
This guide cuts through they hype on Web services and concentrates on the practical and useful. It shows how to use Perl to create Web services and how to implement Perl using XML, SOAP, WSDL and UDDI standards.
One of the greatest strengths of the Perl programming language is its ability to manipulate large amounts of data. Database programming is therefore a natural fit for Perl, not only for business applications but also for CGI-based web and intranet applications.The primary interface for database programming in Perl is DBI. DBI is a database-independent package that provides a consistent set of routines regardless of what database product you use--Oracle, Sybase, Ingres, Informix, you name it. The design of DBI is to separate the actual database drivers (DBDs) from the programmer's API, so any DBI program can work with any database, or even with multiple databases by different vendors simultaneously.Programming the Perl DBI is coauthored by Alligator Descartes, one of the most active members of the DBI community, and by Tim Bunce, the inventor of DBI. For the uninitiated, the book explains the architecture of DBI and shows you how to write DBI-based programs. For the experienced DBI dabbler, this book reveals DBI's nuances and the peculiarities of each individual DBD.The book includes: An introduction to DBI and its design How to construct queries and bind parameters Working with database, driver, and statement handles Debugging techniques Coverage of each existing DBD A complete reference to DBI This is the definitive book for database programming in Perl.
Learn to build web applications with Catalyst, the popular open source web framework based on the Perl programming language. The Definitive Guide to Catalyst: Writing Extendable, Scalable, and Maintainable Perl–Based Web Applications is a definitive guide to Catalyst version 5.8. This book contains Training materials for new and experience programmers. Worked examples and cookbook–style recipes of common web application programming tasks Fundamentals of web application design and best–practice application style What you’ll learn Write web applications with Catalyst and Perl. Design for extendability and code reuse. Understand deployment options for high– and low–traffic sites. Use DBIx::Class, Moose, and Template Toolkit. Understand the Catalyst dispatcher and request cycle. Deal with common web programming requirements: authentication and authorization, web services, sending e–mail, serving streaming media. Who this book is for The primary audience for this book is existing Perl programmers who want more information on writing robust maintainable and extendable web applications. This group is comprised of four subgroups: Experienced perl programmers wanting to update their web programming skills (for example, CGI.pm, mod_perl, and Mason programmers) Intermediate/Late beginner programmers wanting to learn rapid, extendable, maintainable web programming techniques in Perl System administrators and other non–web users of Perl (e.g., bioinformatics workers) who want to learn modern Perl web development techniques Existing catalyst programmers who want to learn about best practices for catalyst development This book is also for programmers who want to understand web application design and development more thoroughly. Table of Contents Introducing the Catalyst Web Application Framework Catalyst Setup and Background Knowledge Your first Catalyst Application Extending LolCatalyst-Lite Deployment Database Models The Catalyst Dispatcher Authentication and Authorization Interacting with Web Services in Your Applications Extending Catalyst Catalyst Cookbook The Reaction Component UI Framework
An explanation of how to expand the functionality and usefulness of the Perl programming language, this guide delves into the complex issues of using real code examples from the Perl source. Detailed is how to use Perl from C programs, such as writing interfaces to C libraries, implementing Perl callbacks for C libraries, and passing Perl hashes and arrays between Perl and C. Additionally, developers are provided with an API reference for the internal C interface to Perl and a reference on the typemap system.