In this chapter, we will work on the Gilded Rose kata to focus on refactoring a legacy code base to add a new feature. We will follow Kent Beck’s guideline for making a desired change.
For each desired change, make the change easy (warning: this may be hard), then make the easy change.
—Kent Beck
Kent Beck’s guideline is at a strategic level. How do we go about making the code easy to change? To answer that question, we need a plan at the tactical level that fits into the higher level strategy. We need a list of concrete things to look for in the code, and we need to apply the refactorings in the right ...