Perl Medic: Transforming Legacy Code

€ 38,49
Besorgung - Lieferbarkeit unbestimmt
März 2004



The first book to explain how to understand, maintain, update, and improve existing Perl code
  • Perl is especially susceptible to maintenance problems, because of its flexible style and ad hoc origins
  • Author uses a medical theme throughout, playing off the similarities of doctoring or healing broken code
  • Contains the most comprehensive treatment of testing Perl programs ever published, as well as the most comprehensive discussion of Perl version differences
This book is about taking over Perl 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 Perl especially tricky. The reason why is that Perl 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, Perl 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 Perl code being used all over the Web; 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 Perl 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 Perl; maintain it; and find and fix its bugs.


Preface. Perl or perl? Obtaining Perl. Historical Perl. Who This Book Is For. Typographical Conventions. For Further Reference. Perl Versions. Perl 6. Acknowledgments. 1. Introduction (First Response). First Things First. Reasons for Inheritance. What Next? Observe the Program in Its Natural Habitat. Get Personal. Strictness. Warnings. 2. Surveying the Scene. Versions. Part or Whole? Find the Dependencies. 3. Test Now, Test Forever (Diagnosis). Testing Your Patience. Extreme Testing. An Example Using Test: Modules. Testing Legacy Code. A Final Encouragement. 4. Rewriting (Transplants). Strategizing. Why Are You Doing This? Style. Comments. Restyling. Variable Renaming. Editing. Line Editing. Antipatterns. Evolution. 5. The Disciplined Perl Program. Package Variables vs Lexical Variables. Warnings and Strictness. use strict in Detail. use warnings in Detail. Selective Disabling. Caveat Programmer. Perl Poetry. 6. Restructuring (The Operating Table). Keep It Brief. Cargo Cult Perl. Escaping the Global Variable Trap. Debugging Strategies. 7. Upgrading (Plastic Surgery). Strategies. Perl 4. Perl 5.000. Perl 5.001. Perl 5.002. Perl 5.003. Perl 5.004. Perl 5.005. Perl 5.6.0. Perl 5.6.1. Perl 5.8.0. Perl 5.8.1. Perl 5.8.2. Perl 5.8.3. 8. Using Modules (Genetic Enhancement). The Case for CPAN. Using CPAN. Improving Code with Modules. Custom Perls. 9. Analysis (Forensic Pathology). Static Analysis. Eliminating Superfluous Code. Finding Inefficient Code. Debugging. 10. Increasing Maintainability (Prophylaxis). Making It Robust. Advanced Brevity. Documentation. Custom Warnings. Version Control System Integration. 11. A Case Study. The Setup. Triage. Desperately Seeking Sanity. Coming into the 21st Century. Incorporating Modules Effectively, Part 1. Incorporating Modules Effectively, Part 2. Making It Mature, Part 1. Making It Mature, Part 2. Making It Mature, Part 3. Advanced Modification. 12. Conclusion (Prognosis). In Conclusion. Perl People. A Final Thought. Appendix: Source Code. Tie::Array::Bounded. Benchmark::TimeTick. smallprofpp. Bibliography. Index. About the Author.


PETER J. SCOTT runs Pacific Systems Design Technologies, providing Perl training, application development, and enterprise systems analysis. He was a speaker on the 2002 Perl Whirl cruise and at YAPC::Canada, and he founded his local Perl Monger group. A software developer since 1981 and a Perl developer since 1992, he has also created programs for NASA's Jet Propulsion Laboratory. Scott graduated from Cambridge University, England, with a Master's of Arts Degree in Computer Science and now lives in the Pacific Northwest with his wife Grace, a cat, and a parrot, at least one of which also uses Perl. He is the lead author of Perl Debugged.
EAN: 9780201795264
ISBN: 0201795264
Untertitel: Sprache: Englisch.
Erscheinungsdatum: März 2004
Seitenanzahl: 311 Seiten
Format: kartoniert
Es gibt zu diesem Artikel noch keine Bewertungen.Kundenbewertung schreiben