Wiki

Changes between Initial Version and Version 1 of DebuggingSansDebugger

Show
Ignore:
Timestamp:
05/04/10 08:13:47 (15 years ago)
Author:
Chuck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DebuggingSansDebugger

    v1 v1  
     1A debugger is an interactive program for setting breakpoints, inspecting variables and so on. However, a debugger is not strictly required to fix bugs. 
     2 
     3The fundamental requirement is to correct your understanding of how your program is behaving in the context of the inputs and environment in which the bug occurs. Of course, a debugger helps you gain that understanding, but there are also non-debugger-based techniques to do so: 
     4 
     5 * Add more contracts in order to reveal the bug closer to its source. 
     6 * Add more unit tests to isolate and verify various behaviors expected of your methods and classes. 
     7 * Add more assert statements in the implementation to reveal the bug close to its source. 
     8   * Note that Cobra's `assert` is ''informative'', meaning that upon failure it will show the values of each sub-expression in the asserted condition. 
     9 * Add `trace` statements to show both values as well as execution flow. 
     10 * Use the ObjectExplorer to browse and inspect objects and their related objects at run-time. 
     11 
     12See also: DebuggingTopics