Section 6.5 The Introduce Parameter and Inline refactorings
There are two more refactorings to discuss in this section, introducing a parameter and inlining.
Subsection 6.5.1 Introduce Parameter refactoring
Introduce Parameter is similar to what we have seen so far.
Introduce Parameter: Identify a local variable which on hindsight should have been provided by the caller instead. Then turn it into a parameter.
The mechanics are relatively simple:
- 
Find the place where the local variable was initialized, and copy that initial value.
- 
Introduce a new parameter of the same type and name as the local variable.
- 
Find all calls to your method and paste the initial value.
- 
If that initial value depended on things that are not available at the callers, youβll need to rethink what you are trying to do.
- 
Remove the declaration and initialization of the local variable.
- 
If your method was overriding a superclassβ method, youβll need to adjust that method as well.
Subsection 6.5.2 Inlining refactoring
Lastly, inlining has a couple of variations:
- 
Inline variable or parameter: Identify a local variable or parameter that always has the same value or calculation. Then replace it with that value or calculation.
- 
Inline method. Replace a call to a method with the code contained in that methodβs body, adjusting the parameter usages to use the provided argument values.
Inlining is often done in preparation of other refactorings, or as a cleanup phase in the aftermath of other refactorings.

