Perl Medic: Transforming Legacy Code

Perl Medic: Transforming Legacy Code

Book Description

This book is about taking over code, whether written by someone else or by yourself at an earlier time. Developers regularly estimate that they spend 60 to 80 percent of their time working with existing code. Many problems of code inheritance are common to all languages, but the nature of the language makes especially tricky. The reason why is that is similar to English – bursting with irregular verbs, consistent only when it’s convenient, borrowing terms from other languages, and providing many ways to say the same thing. In fact, developers have a motto with the abbreviation TMTOWTDI: There’s More Than One Way To Do It. While this flexibility is one of the language’s strengths, it also makes it extremely difficult when you are faced with an existing piece of code. There are millions of lines of code being used all over the ; much of it was built on an ad hoc basis, the creators never imagining that the code would still be in use months or years later. This book will be the resource all programmers need to understand someone else’s code, even when it’s bad; repair it; convert it to a better style; upgrade it to the latest version of ; maintain it; and find and fix its bugs.

Review
Perl ranks among hackers’ favorite languages–there’s always another approach to a problem, always optimization to be done, and forever new techniques to try. Perl’s a hoot. But the culture of tinkering that surrounds Perl has resulted in a large body of hard-to-understand legacy code. That legacy code has to be maintained, extended, and adapted to new conditions–often without the help of the person who originally created it. Perl Medic considers Perl from the perspective of a programmer looking at code written by someone else and trying to answer the ancient question: “What were they thinking?”

It’s a creative approach, and one that makes good reading for someone well-versed in Perl (author Peter Scott makes the analogy of becoming fluent in a human language, such as French, then studying its various accents and dialects). He shows, for example, a kludgy piece of code that’s meant to catch CGI form uploads, then indicates that the obvious replacement is the CGI.pm module. Elsewhere, Scott shows why symbolic references are bad, and how to avoid them by means of hashes. Some of the value in this book is in the form of documentation of the differences among Perl versions; other useful coverage deals with warnings and strictness control as debugging tools. Read this straight through to improve your own code; use the index to help decipher and improve what someone else has written. –David Wall

Topics covered: How to write good Perl code, read bad Perl code, and convert bad Perl code into good in less time that would be required to write an equivalent replacement program from scratch. Testing, debugging, documenting, replacing custom code with CPAN modules, and embracing features that became available in later versions of Perl are all covered. Overall, the author endorses and generally explains the principles of Extreme (XP) for Perl work.

Book Details

  • Paperback: 336 pages
  • Publisher: Addison-Wesley Professional (March 15, 2004)
  • Language: English
  • ISBN-10: 0201795264
  • ISBN-13: 978-0201795264
  • File Size: 6.7 MiB

E-Book

[FP] Addison.Wesley.Perl.Medic.Transforming.Legacy.Code.Mar.2004.rar
[UN] Addison.Wesley.Perl.Medic.Transforming.Legacy.Code.Mar.2004.rar

Paper Book

[Amazon] Perl Medic: Transforming Legacy Code
Tags: