Question: For each problem, study the supplied code, and list the code smells you see. For this exercise the code smells should be one of these:

For each problem, study the supplied code, and list the code smells you see. For this exercise the code smells should be one of these:

  • long method,
  • large class,
  • duplicate code (aka cut and paste code),
  • long parameter list,
  • primitive obsession, and
  • magic numbers.

For each code smell,

  • list the line numbers of the code where the smell is focused,
  • identify the design principle(s) that are violated, and
  • identify some program change that the smell would complicate.

do {

// input data source

prompt("Data source? (0 = file, 1 = generated)");

if (getInput() == 0L){

//get data from file

int[] fileMaster ;

//process data from file

//input file name

prompt("File name? ");

String fname = getFileName();

fileMaster = readFile(fname);

expData = runSorts(fileMaster, sorters);

} else {

int[] randomData;

// get experiment parameters

prompt("How many values?");

length = getInput();

prompt("What seed? 0 = default ");

seed = getInput();

// generate random data

randomData = new int[length];

setRandomSeed(seed);

for (int i = 0; i < length; i++){

randomData[i] = nextRandomInt();

}

expData = runSorts(randomData, sorters);

}

System.out.println(expData.formatTable());

prompt("Another experiment? (0 = no, 1 = yes) ");

} while (getInput() == 1L);

Smells and locations?

Design principles?

Maintenance Consequences?

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!