Pyramid of Refactoring
Włodek Krakowski is an independent technical trainer. Also a developer if the time allows. His main interest is taking care of delivering valued software from different perspectives. These are how people take care of quality of code, how people work together towards providing business value, how people help to grow each other and how people are managed. He delivers technical / refactoring trainings at refactoring.pl.
Everyone has heard about test pyramid… and refactoring pyramid is its twin. Using Pyramid of testing we can set up the tests coverage of the existing functionality reaching given level (UI, modules, packages, classes, methods). This allows us to have a look at corresponding pyramid of refactoring and figure out what kind of refactorings can be performed safely. We start from the bottom of refactoring pyramid (simpler conditions, smaller methods) and climb up towards the highest level that is covered by tests. This concept will be presented using live refactoring of simple logic into interpreter design patterns. This way we will experience that refactoring at higher levels (design patterns, classes) can be continued only once lower levels like small methods, small classes, interfaces are being taken care of. You need to experience to understand.