What are some ways try / catch / throw can develop software , C/C++ Programming

Assignment Help:

 

Q: What are some ways try / catch / throw can develop software quality?

A: By removing one of the reasons for if statements.

The commonly utilized alternative to try / catch / throw is to return a return code (sometimes called an error code) that the caller explicitly tests through some conditional statement like if. For instance, printf(), scanf() and malloc() work this way: the caller is assume to test the return value to see if the function succeeded.

Though the return code technique is sometimes the most suitable error handling technique, there are some nasty side effects to needless adding if statements:

Degrade quality: This is well known that conditional statements are about ten times more likely to hold errors than any other sort of statement. Thus all other things being equal, if you can remove conditionals / conditional statements from your code, you will possible have more robust code.

Slow down time-to-market: As conditional statements are branch points which are associated to the number of test cases that are required for white-box testing, unnecessary conditional statements enhance the amount of time which needs to be devoted to testing. Essentially if you don't exercise all branch point, there will be instructions within your code that will never have been executed under test conditions till they are seen by your users/customers. That's terrible.

Enhance development cost: Bug finding, bug fixing, and testing are all enhanced by unnecessary control flow difficulty.

thus compared to error reporting by means of return-codes and if, using try / catch / throw is likely to result in code which has fewer bugs, is less costly to develop, and has faster time-to-market. Certainly if your organization doesn't contain any experiential knowledge of try / catch / throw, you might wish to use it on a toy project first just to make sure you know what you're doing you must always get used to a weapon on the firing range before you bring it to the front lines of a shooting war.


Related Discussions:- What are some ways try / catch / throw can develop software

C program for bubble sort, C program for bubble sort: void main() {...

C program for bubble sort: void main() { int i,j,k,a[10],n; clrscr(); printf("How many values you want to enter\n"); scanf("%d",&n);  for(i=0;i  {  pri

#rotation, #write code for rotation in c

#write code for rotation in c

Briefly describe how a linear search algorithm works, Question 1: (a) D...

Question 1: (a) Describe the following objects and condition states: (i) ifstream and ofstream objects (ii) eof(), fail(), bad() and good() functions. (b) Write a C++ pr

C, Write a program to find the area under the curve y = f(x) between x = a ...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

File, how i can open a file

how i can open a file

Program to access file system, The program must use the file named on the c...

The program must use the file named on the command line as its input file. Suppose the program is named pdbtool. Then if the user types pdbtool 1A36.pdb the program must read the d

Copy constructor and an overloaded assignment operator, What is the differe...

What is the difference among a copy constructor and an overloaded assignment operator? Ans) A copy constructor constructs a latest object by using the content of the argument

Multiple constructor, Constructor public class ListNode {    //...

Constructor public class ListNode {    // package access members; List can access these directly private E data; // data for this node privateListNode nextNode; /

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd