
Refactor Your Code #14
Chapter 2, Master the Editor
|
67
HACK
interface IStart
{
bool IsStarted { get; set; }
}
Visual Studio will also modify the existing class to implement the new inter-
face. The Extract Interface function is a great time-saver when you need to
create an interface that is based on a current class.
Parameter Functions
The next three functions on the menu all focus on working with parame-
ters. Since the sample class does not currently contain any methods with
parameters, go ahead and add a new method with a number of different
parameters. Here is a method called
Collision that you can add to this class:
public void Collision(DateTime CrashDate, int Speed, int DamagePct)
{
int costMultiplier = 1;
// Do stuff
}
As you can see, this method has a local variable called costMultiplier and
sets the value to
1. But suppose that costMultiplier varies from vehicle to
vehicle. In this case, you’d want to pass in this multiplier as a parameter
instead of creating it as a local variable. The first of the parameter refactor-
ing functions will do just that. First, right-click on the
costMultiplier vari-
able and select the Promote Local Variable to Parameter function. This will
take the local variable and add it as a parameter to the method. Here is a
look at the modified code:
public void Collision(int costMultiplier, DateTime CrashDate,
int Speed, int DamagePct)
{
// Do stuff
}
You may be thinking that ...