Matthew Butt demonstrates how to compose simple automated refactoring steps in ReSharper to refactor code to better designs.
In this episode, we spot a conditional with three branches. We decompose this conditional to clarify the logic, then extract method objects to encapsulate the behaviour of each branch. By the time we've finished, we are well on our way to implementing polymorphism.
The code used in this video can be found on GitHub.
This article was first published on the Codurance blog.