Complex Refactoring in Simple Steps — Part 3: From Conditional to Polymorphism

Matthew Butt demonstrates how to compose simple automated refactoring steps in ReSharper to refactor code to better designs.

In this episode we identify three classes that are being used in the same way. We introduce a common abstraction, and separate their creation and invocation. Finally, we remove a Middleman class to complete our journey to polymorphism.

The code used in this video can be found on GitHub at https://github.com/bnathyuw/Complex-Refactoring-In-Simple-Steps

source