08 July, 2013

A Guide to Efficient and Faster Java debugging


Debugging is one skill that every java developer must possess. The reason behind such a crucial need is simple; the skill helps you to discover delicate bugs, which otherwise becomes invisible during the time of reviewing the code. The debugging skill becomes even more essential if your work tends to revolve around electronic trading system or high frequency project where the fixing time of a bug tends to be very low. Moreover, the bug tends to appear on production environment and be invisible in a machine featuring windows XP.

In some cases, it also helps understanding the flow of the java program. Now, when it comes to debugging, tools like Netbeans and Eclipse IDE come of great help. These tools are known to offer several breakpoints through the process and provide a great support to Java debugging. To start the complete process of debugging, all you need to do is configure the project in a modern IDE like Netbeans or Eclipse. Usually, Eclipse tends to offer better debugging opportunities as it allows an effortless integration with remote debugging.

Top Java Debugging Tips
Here is a quick look at some of the top and essential debugging tips using Eclipse that is sure to help you in java web development:

1. Make use of conditional breakpoint: Eclipse enables you to establish a conditional breakpoint, which allows you to debug a particular java program. The particular idea refers to a call for a breakpoint under condition wherein your thread will only discontinue at a particular line, provided the condition tends to match, as against stopping anywhere on that particular line due to line breakpoint. To establish the feature of conditional breakpoint, all you need to do is click twice on the particular line of breakpoint followed by a right click to properties and insertion of the condition. The program will only discontinue temporarily at the breakpoint without any hitch.

2. Make use of exception breakpoint: It is likely for you to experience bouts of frustration with the NullPointerException clueless about the source of origin. Exception breakpoint is precisely established to fight the odds of such situations. The setup can be easily done from the breakpoint window stopping your program. The Exception breakpoint can be established on exceptions of Java like ArrayIndexOutOfBoundException and NullPointerException.

3. Step Into, Step Over: These are referred to as wonderful options of debugging that are easily available in any kind of Java IDE. This particular approach comes useful in cases you need to debug multi-threaded application and direct a systematic navigation.

4. Incorporating watch point: This particular facility stops a program execution enabling a debug of the same, especially after a selected attribute has been modified or accessed. All you need to do is choose a variable in the Outline view and direct to the toggle Watchpoint from the context menu. This particular approach helps creating a watch point for the particular attribute listing it in Breakpoints view.

5. Make use of inspect and watch: These two options in the menu allow noting the expression value during the debugging process of the Java program. The process involves choosing the statement followed by a right click and navigating towards the inspect option to get the statement value during the time of debugging. You can also consider adding a watch to the process so as to make the value appear at the watch window.

6. Suspend and continue thread: You can suspend any thread and continue with the same again during the debugging process of a java program from the debug window. To make it work, you need to right click on any particular thread and select the choice of resume or suspend. This helps in cases like initiating a debug of multi-threaded program.

7. Make use of logical structure: The option of logical structure comes quite useful for monitoring contents within Java collection classes during the debug process. This help exhibiting the contents in key and hashmap value as against exhibiting complete hashmap details. This can be enabled from the variables window.

8. Incorporate Step filtering: The control of the program tends to transport from one class to the other class and finally end in classes of JDK like String or Sytem, especially when the Step Into is incorporated during the debugging process. Step filtering comes extremely helpful in cases when one needs to stay in an application without navigating into the classes of JDK system. This helps filtering out the class of JDK from Step into. This can be established from the preferences àJavaàDebugàStep filtering followed by easy disabling and enabling from the debug window.

9. Use Copy Stack option: If you wish to copy a particular stack of thread that had hit the breakpoint and has been suspended, the Copy Stack option comes of great help. The process involves right clicking on the particular thread on the window of debug and selecting the option of ‘copy stack’.

Some Important Shortcuts to Java Debugging
  • F5 – The key to Step Into, which allows a move to next step.
  • F6 – The key to Step Over, which allows a move of the control to the next line.
  • F7 – The key to Step Return, which when executed from within a method allows a move of the control to the calling line from the place of origin of the current method.
  • F8 – The key to move towards the next breakpoint.
Debugging a java program has become easier and efficient with the introduction of wonderful tools like Netbeans and Eclipse and is definitely worth a try.

We provide java development services. If you would like to hire java developer from our team, please get in touch with us at Mindfire Solutions.

No comments: