When creating an application, we often notice that adding new functionalities starts to cause problems. Under the pressure of time, we start to go around them by applying strange and incomprehensible changes to the code. Doing so may force us to rewrite part of the application and not deliver it on time. This is obviously one of the worst-case scenarios, but it's certainly real. The solution is code refactoring. In this article, we'll show you what it is and why it's so important.