Due to the strong practical nature of refactoring and the essentially empirical nature of human knowledge, we want to provide you with an example of what all this refactoring is about. Refactoring is a practice addressed to some of the main object-oriented development principles, so we think it best for the reader is to see a real example before diving deep into the refactoring techniques list.
In this chapter we'll try to give you an idea of what refactoring is and what could it mean to developers like us.
Everyone can understand the following expression:
(a + b)(a ...