1first bluej day, houston, texas, 1st march 2006 debugging in bluej davin mccall
Post on 29-Jan-2016
217 Views
Preview:
TRANSCRIPT
First BlueJ Day, Houston, Texas, 1st March 2006 1
Debugging in BlueJ
Davin McCall
First BlueJ Day, Houston, Texas, 1st March 2006 2
Overview
• What is debugging?
• Object inspector
• Method invocation
• “Traditional” BlueJ debugger window
• Demo
• Questions
First BlueJ Day, Houston, Texas, 1st March 2006 3
Debugging…
• Locate the source of a bug• Run through the part of the program
where we think the bug is occurring, watch program behaviour
• In BlueJ this is normal operation!! (to some extent) - inspectors, method invocation
• BlueJ also has a (simple) more traditional debugger
First BlueJ Day, Houston, Texas, 1st March 2006 4
Debugging (cont’d)
• Set “breakpoints” which will halt the program execution when reached
• Once execution is halted, can continue execution line by line (“stepping”), either following or stepping over function calls
• Inspect values of variables in currently executing methods (the stack). Inspected objects shown in familiar inspector windows
First BlueJ Day, Houston, Texas, 1st March 2006 5
Stepping
• Stepping through code …
• Might let us see what is going wrong
• Also serves as a good way to demonstrate control structure behavior, program flow, etc
First BlueJ Day, Houston, Texas, 1st March 2006 6
BlueJ as a debugger
• Even without the debugger window, BlueJ offers unique features which can be used for debugging and testing
• Construct objects on the fly
• Call arbitrary methods interactively
• Inspect objects and classes to see field values
First BlueJ Day, Houston, Texas, 1st March 2006 7
Conclusion
• BlueJ provides basic debugging functionality
• Some of BlueJ’s core features (interactive invocation and inspection) are also useful for debugging
• Debugging techniques can serve another purpose: demonstrating code behaviour
top related