fbpx
 Pyramid of Refactoring 
Description : Pyramid of Refactoring
Look through the course and look for inspirations for daily refactoring techniques of your legacy code!

This is the first module of (planned) series called “Pyramid of Refactoring” dedicated to achieving Clean Code.

We use refactoring techniques and perform all the changes live. The student downloads the source code and performs all the changes together with the trainer – step by step. In this sample we make use of Interpreter Design Pattern as goal of our refactoring journey. The Interpreter Pattern is accompanied by two creational design patterns – Factory Method and Fluent Builder, which are also result of refactoring activities.

SOLID Principles will be explained in practice instead of teaching the sole theory.

Pyramid of refactoring Wide
The journey allows us practice code transformations like :

  • Replace Loop with Stream
  • Extract Delegate / Class
  • Extract Interface
  • Extract Parameter Object
  • Replace Method with Method Object
  • Extract Method / Variable
  • Move Method
  • Inline Method / Variable

Install IntelliJ IDE, Java and try it out. You will perform all the changes step by step with the trainer and learn refactoring transformations built into IntelliJ. Moreover after registering to this online workshop you will be informed about promotional prices of my other trainings which will allow you to continue with this subject at the lowest possible price.

Join a few hundreds of software developers whole spent these 2 hours and applied refactoring techniques to Clean Code in their daily work.

 Design Pattern - Chain of Responsiiblity 
Description : Refactoring into Chain of Responsibility
Look through the course and look for inspirations for daily refactoring techniques of your legacy code!

This is the second module of series called “Pyramid of Refactoring” dedicated to achieving Clean Code.

Although Refactoring to Chain of Responsibility is not mentioned in the core refactoring books (“Refactoring” & “Refactoring to Patterns”) the techniques described in these books allow to create a plan for such a refactoring journey.

The goal of the course is to disentangle the codebase from a set of deeply nested conditional if/else statements. It is a very common case – and if it is left for a long time – then it leads to a very complex legacy code after subsequent code extensions.

We use refactoring techniques and perform all the changes live. The particitants download the source code and performs all the changes together with the trainer – step by step. In this sample we make use of Chain of Responsibility Design Pattern as goal of our refactoring journey.

chain-2027199_640
The journey into Chain of Responsibility pattern allows the attendees to practice code transformations like
  • Merge Parallel "if" Statements
  • Merge Nested "if" Statements
  • Extract Methods
  • Replace Temp with Query
  • Move Methods
  • Inline Methods
  • Extract Class / Extract Delegate
  • Extract Interface - Rename Methods & Variables

The course ends up with HOMEWORK, where the participants can experience the difference between implementing additional requirements within Clean Code and within Legacy Code. This is the difference between skipping and applying Preparatory Refactoring.