by Apress
| Average Rating: |
|
| Sales Rank: | 853629 (lower is better) |
| Price Used: | $9.00 |
| Shipping: | Free Shipping on most orders over $25* |
| Availability: | Usually ships in 24 hours |
| Label: | Apress |
| Pages: | 296 |
| Binding: | Hardcover |
| Publication Date: | 2005-03-14 |
| Published By: | Apress |
| ASIN: | 1590594541 |
| Category: | Book |
Authors
Editorial Reviews and Product Descriptions
Product Description
Anyone looking for a detailed and competent explication of the native Perl debugger, would likely not be able to find a more thorough treatment anywhere else.
— Michael J. Ross, Web developer/Slashdot Contributor
This one goes on the 'keeper' shelf, for sure.
— Tony Lawrence, aplawrence.com
Combining the best features of C, UNIX utilities, and regular expressions, Perl has grown as one of the most powerful and popular scripting languages. The valuable Perl is often used for system administration, text processing and Web programming. It is even being used for more exotic areas, like bioinformatics. Perl is supported by all of the most prominent operating systems, including Windows, Unix, OS/2, Amiga, and others.
Pro Perl Debugging steps in to help resolve the dilemma of application testing and debuggingone of the biggest time commitments in a programmers daily routine. What this book will do is rescue you from substandard application testing practices. The book commences with several chapters that overview the debuggers basic features, then covers common debugging scenarios. The concluding portion examines debugger customization, alternative debugging utilities, and debugging best practices.
Customer Reviews
quite useful, but deserves a second edition - Reviewed on 2007-08-05
6 customers found this review helpful.
When I first saw a listing for this book, I assumed it was going to be a book about debugging Perl -- the title sort of led me in that direction. I thought it would give an overview of the common mistakes made by Perl programmers, how to catch them, how to correct them, and how to avoid making them in the first place. When I asked about the book, though, I found out that it's a book all about the Perl debugger. I use the debugger daily, and I only use a few of its features, so I was pretty excited about the book -- and even more excited to be getting a copy to review.
The only other book that really focuses on the debugger, as far as I know, is the Perl Debugger Pocket Reference, also by Richard Foley. I picked that up for $10 or so at a TPF auction and found it to be a decent pocket reference. I was hoping, though, that now I'd have a book that would cover the debugger in depth, soup to nuts.
Pro Perl Debugging does that, and it does it fairly well. It begins by explaining how and why the debugger can be used, and then introduces the most basic debugger commands. Subsequent chapters introduce new families of commands and options, and these new features are demonstrated through the use of the debugger on example code. Once all the commands and most of the options have been explained, there are a few chapters on specific challenges in debugging: forking and threading, debugging networked applications (like CGI apps), and regex debugging. The last few chapters cover GUI debugger frontends, profiling and optimizing, and the Perl compiler.
The book covers everything that I think it needs to cover, and covers it well enough that with some coding along, the reader can learn how to use the debugger and nearly all its features.
With all that said, though, I have to add that I think Pro Perl Debugging is an adequate book and not a great one. There are a number of technical errors in the book; most of these are just little mistakes that probably crept in because there was insufficient testing of the examples. While they're minor, they seem sure to cause confusion for readers who try the examples as they go. The examples themselves often seem arbitrary, and don't contribute much to the explanation of new features. At no point in the book did I ever think, "This example really made the usefulness of that new feature very clear." Usually, the feature's usefulness is self-evident, though. Unfortunately, some features are somewhat obscure, and are never very well explained. The dot command, which resets the working position to the current execution point, is particularly confusing. I only fully understood it after piecing together statements made about it across several chapters. The debugger prompt (a related issue) is also poorly explained, with some of its features never discussed.
The book's typographic conventions are ill-suited to the book's material, and in some cases seem to change from chapter to chapter. There is no distinction in the examples between user-entered text and debugger output. Editorial changes to the sample output (elisions, for example) are not handled in a consistent way. The structure of the book is also frustrating. Some chapters appear much later than seems appropriate (that on using the debugger as a REPL, for one). Others repeat material covered earlier. Finally, each chapter begins with a quotation. While this is sometimes a fun addition to an otherwise bland text, here the quotes seem random and the segue from quote to material is often strained.
I'm glad to have a copy of this book, and I've definitely learned some things from it. (Did you know that your debugger can spawn new xterms to handle forked processes?) I really hope that the book gets a second edition, because it has the potential to be an essential book for professional Perl programmers.
* - See Amazon
Product Page for shipping and pricing details.
Book Subjects
- Computer Programming
- High level programming languages
- Programming languages
- Computers
- Computers - Languages / Programming
- Computer Books: Languages
- Computers / Programming / Software Development
- Computers / Programming Languages / Perl
- Programming Languages - Perl
- Programming - General
- Programming Languages - CGI, Javascript, Perl, VBScript
- Debugging in computer science
- Perl (Computer program language)
- Computing: Professional & Programming