Debug It Find Repair and Prevent Bugs in Your Code 1st Edition by Paul Butcher – Ebook PDF Instant Download/Delivery: 193435628X, 9781934356289
Full download Debug It Find Repair and Prevent Bugs in Your Code 1st Edition after payment
Product details:
ISBN 10: 193435628X
ISBN 13: 9781934356289
Author: Paul Butcher
Some developers thrash around aimlessly looking for a bug without concrete results. Others have the knack of unerringly zeroing in on the root cause of a bug. Are they geniuses? Just lucky? No, they’ve learned the secrets of professional debugging. This book will equip you with the tools, techniques and approaches-proven in the crucible of professional software development-to ensure that you can tackle any bug with confidence. You’ll learn how to handle every stage of the bug life-cycle, from constructing software that makes debugging easy, through detection, reproduction, diagnosis and rolling out your eventual fix. If you develop software, sooner or later you’re going to discover that it doesn’t always behave as you intended. Working out why it’s misbehaving can be hard. Sometimes very hard. Debug It! is here to help! All bugs are different: there is no silver bullet. You’ve got to rely upon your intellect, intuition, detective skills and yes, even a little luck. But that doesn’t mean that you’re completely on your own-there is much you can learn from those who have gone before. This book distills decades of hard-won experience gained in the trenches of professional software development, giving you a head-start and arming you with the tools you need to get to the bottom of the problem, whatever you’re faced with. Whether you’re writing Java or assembly language, targeting servers or embedded micro-controllers, using agile or traditional approaches, the same basic bug-fixing principles apply. From constructing software that is easy to debug (and incidentally less likely to contain bugs in the first place), through handling bug reports to rolling out your ultimate fix, we’ll cover the entire life-cycle of a bug. You’ll learn about the empirical approach, which leverages your software’s unique ability to show you what’s really happening, the importance of finding a reliable and convenient means of reproducing a bug, and common pitfalls so you can avoid them. You’ll see how to use commonly available tools to automatically detect problems before they’re reported by customers and how to construct “transparent software” that provides access to critical information and internal state.
Table of contents:
I The Heart of the Problem
A Method in the Madness
Debugging is More Than “Making the Bug Go Away”
The Empirical Approach
The Core Debugging Process
First Things First
Put It in Action
Reproduce
Reproduce First, Ask Questions Later
Controlling the Software
Controlling the Environment
Controlling Inputs
Refining Your Reproduction
What If You Really Can’t Reproduce It?
Put it in Action
Diagnose
Stand Back—I’m Going to Try Science
Stratagems
Debuggers
Pitfalls
Mind Games
Validate Your Diagnosis
Put it in Action
Fix
Clearing the Decks
Testing
Fix the Cause, Not the Symptoms
Refactoring
Checking in
Get Your Code Reviewed
Put it in Action
Reflect
How Did it Ever Work?
What Went Wrong?
It’ll Never Happen Again
Close the Loop
Put it in Action
II The Bigger Picture
Discovering That You Have a Problem
Tracking Bugs
Working with Users
Working with Support Staff
Put It in Action
Pragmatic Zero Tolerance
Bugs Take Priority
The Debugging Mind-Set
Digging Yourself Out of a Quality Hole
Put it in Action
III Debug-Fu
Special Cases
Patching Existing Releases
Backward Compatibility
Concurrency
Heisenbugs
Performance Bugs
Embedded Software
Bugs in Third-Party Software
Put it in Action
The Ideal Debugging Environment
Automated Testing
Source Control
Automatic Builds
Put it in Action
Teach Your Software to Debug Itself
Assumptions and Assertions
Debugging Builds
Resource Leaks and Exception Handling
Put it in Action
Anti-patterns
Priority Inflation
Prima Donna
Maintenance Team
Firefighting
Rewrite
No Code Ownership
Black Magic
Put it in Action
A Resources
Source Control and Issue-Tracking Systems
Build and Continuous Integration Tools
Useful Libraries
Other Tools
People also search:
example of bug and defect
how do you find and fix bugs in your code
bug fixing debugging
fixing bugs and stuff
Tags: Paul Butcher, Debug, Repair, Prevent, Bugs