How to change procedural code into object-oriented one?

What style should Clean Code be written in? Clean Code is not always object-oriented. Sometimes it will be written in procedural style. And what style is better: procedural or object-oriented? We should perform the choice under given conditions which facilitates its development and readability – in accordance with the principles of Clean Code. Below is…

Why Pyramid structure supports Refactoring?

If you haven’t read the blogs about history of Refactoring Pyramid that help to keep Clean Code read below articles first. Sometimes people ask the question why I’ve chosen the pyramid as a way in which I described my approach to refactoring. There are many other concepts on how and when to refactor. Each of…

How SOLID Principles support refactoring?

This article complements the subject of refactoring by explaining connections between the Pyramid and Uncle Bob’s SOLID principles. We will see how each of SOLID rules acts as basement for each level in the pyramid. We will end up at the top level of architectures. In my previous post I explained levels of Refactoring Pyramid…

Pyramid of Refactoring – Example

In this post I would like to show you “Refactoring Pyramid in Practice”. In order to do so, I will follow the sequence of small transformations like in one of refactoring examples in “Refactoring to Patterns” book by Joshua Kerievsky. The sample will show refactoring to Interpreter. Anyway I’ve experienced the same refactoring flow when…

Pyramid of Refactoring – Discovery

General principles, patterns – at one side allow us to tidy up knowledge, use common approach when solving certain kind of problems. On the other side they might impede our creativity and inspiration. But even then we have something we can base on even if we want to reject it and invent something better. Pyramid…

Clean Code & Refactoring Newsletter

Webinars, Articles & Online Courses / Onsite Workshops

Send me your newsletter (you can unsubscribe at any time).

I do accept terms and privacy policy