Refactoring Out Idential Code

Example:

?
 
01
02
03
04
05
06
07
08
09
10
if (condition)
{
    ...idential code...
    DoA();
}
else
{
    ...idential code...
    DoB();
}
 
 
if (condition)
{
    ...idential code...
    DoA();
}
else
{
    ...idential code...
    DoB();
}

Move the identical code upwards:

?
 
1
2
3
4
5
6
7
8
9
...idential code...
if (condition)
{
    DoA();
}
else
{
    DoB();
}
 
 
...idential code...
if (condition)
{
    DoA();
}
else
{
    DoB();
}

Anoter Example:

?
 
01
02
03
04
05
06
07
08
09
10
if (condition)
{
    DoA();
    ...idential code...
}
else
{
    DoB();
    ...idential code...
}
 
 
if (condition)
{
    DoA();
    ...idential code...
}
else
{
    DoB();
    ...idential code...
}

Move the identical code downwards:

?
 
1
2
3
4
5
6
7
8
9
if (condition)
{
    DoA();
}
else
{
    DoB();
}
...idential code...
 
 
if (condition)
{
    DoA();
}
else
{
    DoB();
}
...idential code...


Back to Refactoring Index

Back to Programming Index

Back to DELEY’S Home Page