CSC/ECE 517 Fall 2010/ch2 S20 CR: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 12: Line 12:
It is the most common example of code reuse.Suppose we want certain manipulating functions like date,time,string or functions related to interfacing of an external database with our program  we use software libraries.These libraries are either created by us or these comes as external library in the languages.
It is the most common example of code reuse.Suppose we want certain manipulating functions like date,time,string or functions related to interfacing of an external database with our program  we use software libraries.These libraries are either created by us or these comes as external library in the languages.


For example in C/C++ if we want to use all string functionality we write our code as following we can include string header as follows.
For example in '''C/C++''' if we want to use all string functionality we write our code as following we can include string header as follows.
<pre>
<pre>
#include "stdio.h"
#include "stdio.h"
Line 25: Line 25:
return 0;
return 0;
}
}
</pre>
We can use Java Packages as follows.If we want to use Date class we can write the code as follows.
<pre>
java.util.Date today = new java.util.Date();
System.out.println("Todays Date is "+today);
</pre>
</pre>
We can also create Macro in C/C++ and reuse it.Following example clearly explains it.
We can also create Macro in C/C++ and reuse it.Following example clearly explains it.
Line 42: Line 37:
}
}
</pre>
</pre>
In Ruby the code reuse is mainly done through usage of modules and mixins.
In '''Java''' we can use Java Packages as follows.If we want to use Date class we can write the code as follows.
<pre>
java.util.Date today = new java.util.Date();
System.out.println("Todays Date is "+today);
</pre>
 
In '''Ruby''' the code reuse is mainly done through usage of modules and mixins.
The example of Module is  
The example of Module is  
<pre>
<pre>

Revision as of 06:29, 6 October 2010

Introduction to Code Reuse

Advantages of Code Reuse

Disadvantages of Code Reuse

Categories of Code Reuse

Internal Code Reuse

Suppose a team needs to start a new project.In order to start the project the team can use all possible reusable components that it has built earlier instead of again re-creating them.Such usage of reusable components is referred as Internal Code Reuse.Few such examples of Internal Code reuse are :

  • Simple Copy and Paste of the Code

Here we simply try to find the source code that perform the required functionality.We copy and paste the source code into our required code area.But in this case people sometimes try to copy from an external source which is discouraged method and it leads to plagiarism.

  • Using Software Library

It is the most common example of code reuse.Suppose we want certain manipulating functions like date,time,string or functions related to interfacing of an external database with our program we use software libraries.These libraries are either created by us or these comes as external library in the languages.

For example in C/C++ if we want to use all string functionality we write our code as following we can include string header as follows.

#include "stdio.h"
#include "string.h"  //Inclusion of string header file 

int main()
{
 if (strcmp("ncsucsc517","ncsucsc517")== 0) //strcmp is function provided by string library which compares two string.
 {
   printf("the string are same");
 }
return 0;
}

We can also create Macro in C/C++ and reuse it.Following example clearly explains it.

#include "stdio.h"
#define Cubeof(x) x*x*x  //Here at first we define a Macro that calculates the cube of a number
int main()
{
  int input = 6;
  printf("\nCubeof(x)=%i",Cubeof(input)); //Here we reuse the Macro "Cubeof"
  return 0;
}

In Java we can use Java Packages as follows.If we want to use Date class we can write the code as follows.

 java.util.Date today = new java.util.Date();
 System.out.println("Todays Date is "+today);

In Ruby the code reuse is mainly done through usage of modules and mixins. The example of Module is

module Power
  NUMBER = 5
  def Power.Square(x)
    return x*x
  end
  def Power.Cube(x)
    return x*x*x
  end
end

cube = Power.Cube(Power::NUMBER)
puts cube

External Code reuse