Find the best tutors and institutes for Computer Course

Find Best Computer Course classes

Please select a Category.

Please select a Locality.

No matching category found.

No matching Locality found.

Outside India?

Search for topics

What is debugging? and its importance

Vihanga EmbedSoft
13/07/2019 0 0

Debugging is a step by step process of identifying the errors present in the code.  The question here is what kind of mistakes? Usually errors are of two types.
1. Syntax errors
2. Logical errors.
Syntax errors are those where an error present in the syntax of a construct of a language. Such errors are identified by a compiler.
 Logical errors are those where an error present in the logic of the software problem statement. i.e. Software program runs but produces incorrect output.
 Logical errors are identified by the debugging process.  

How to perform Debugging?
 Debugging is not rocket science. It is straightforward. One who knows the software programming knows the debugging activity, but do not see the activity they are performing is debugging.  Let me explain with an example.
 Consider an example C Program of finding a square root of a number without using an SQRT function. Usually, the code for this program is around 20 lines.
 Anyone who writes the program will follow three steps. i.e.
1. read inputs
2. process inputs to produce outputs
3. Display outputs
To read inputs from the console in C, one uses scanf() function.
Similarly to display the outputs on the console, one uses printf() function.
Process operation contains different control structures, loops etc..
On completing the program, one tries to run it to see the written program is correct or not.
 To check that, one need to give input value to the program say 9. The square root of 9 is three, but the program is displaying other than 3. Now we know that the program is written is not performing Square root functionality correctly.  Next step we do is we start analysing the code by printing intermediate values of the logic with the help of the print() function and re-run the program.  Now you see the intermediate output displayed correctly or not.  If correct, then you know the logic written up to this point is right. Then shift the print() function down and check again.  Repeat the process until you find that the intermediate output is deviating from the correct output.  It is the area we know that computation is going wrong.
 This process is called Debugging. Identifying where the error accurately is called localising and correcting the error is called Fixing.  Therefore to summarise, Debugging process constitutes Debugging, Localizing and Fixing.
 Instead of placing printf() statement in the code, there are tools available. With these tools, one can mark a breakpoint and run the program up to that point and check the intermediate output variables or one can run the program statement by statement called step by step method. These features help you to identify the logical errors quickly.

Importance of Debugging?
 Usually, logical errors are complicated to remove and consumes more time in the projects to eliminate them.  So debugging process helps one to identify the logical error and eliminate them quickly.
 Finally,  with excellent Debugging skills, an average programmer/Tester become gets an extra-ordinary rating. But without debugging skills, an extra-ordinary programmer/Tester looks very ordinary.

0 Dislike
Follow 2

Please Enter a comment


Other Lessons for You

Compiling C program on Linux machine GCC ,GDB
Linux have powerful tool called "Terminal". From "terminal" we can command the machine. For any programming language the required tools are editor, compiler and debugger. Compiler will check the syntax...

Narasimha Reddy | 06 Mar

0 0

TestNG Concepts TestNG: TestNG is an automation framework to run the test cases, test suites and do parallel testing. It is an advanced version of Junit. It consists of many features like annotations,...

Kiran Ayyagari | 24/07/2019

0 0

Software Testing Course
Software testing course. Software testing training course What is software testing? Why is testing necessary? Testing Participants Testing Principles Best Practices in Testing Skills For Testing Software...

The Best Option JavaScript Language For Developers
We already know about JavaScript. But today I will be discussing JavaScript features and JavaScript development process. I was wonder about JavaScript last 10 years. Because JavaScript can give us frontend...

Shibaji Debnath | 19/02/2018

0 0

What Is Mean Stack? Why Mean Stack Is Popular Now?
Mean Stack is standing for MongoDB, ExpressJS, AngularJS and NodeJS. These four javascript solutions create a high performing web application. Mainly JavaScript is the frontend language. It’s working...

Shibaji Debnath | 13/02/2018

1 0

Looking for Computer Course Classes?

Find best tutors for Computer Course Classes by posting a requirement.

  • Post a learning requirement
  • Get customized responses
  • Compare and select the best

Looking for Computer Course Classes?

Find best Computer Course Classes in your locality on UrbanPro

Post your learning requirement is India's largest network of most trusted tutors and institutes. Over 25 lakh students rely on, to fulfill their learning requirements across 1,000+ categories. Using, parents, and students can compare multiple Tutors and Institutes and choose the one that best suits their requirements. More than 6.5 lakh verified Tutors and Institutes are helping millions of students every day and growing their tutoring business on Whether you are looking for a tutor to learn mathematics, a German language trainer to brush up your German language skills or an institute to upgrade your IT skills, we have got the best selection of Tutors and Training Institutes for you. Read more