Debugging is the process of finding and reducing the number of bugs in computer software and electronic hardware. When a program crashes, the debugger shows the position in the original code. A good debugger plays an essential role in software development.
Debugging can be more difficult when various subsystems are tightly coupled, as changes in one may cause bugs to appear in another.
A memory debugger is a programming tool for finding memory leaks and buffer overflows. These are due to bugs related to the allocation and deallocation of dynamic memory. Programs written in languages that have garbage collection, such as managed code, might also need memory debuggers.
Bug tracking software helps quality assurance and programmers keep track of reported software bugs in their work.
|GDB||The GNU Debugger|
|D.U.M.A||Detect Unintended Memory Access|
|Bugzilla||Web-based general-purpose bug tracking system and testing tool|
|MantisBT||Issue tracker that provides a delicate balance between simplicity and power|
|Trac||Enhanced wiki and issue tracking system for software development projects|
|Are you interested in learning the art of programming? There are lots of excellent free and open source programming books that teach you how to program in every popular programming language. Read these Free Books.|