Old code. Ugly code. Complicated code. Spaghetti code. Jibberish nonsense. In two words, Legacy Code. This is a series that will help you work and deal with it.
In an ideal world, you would write only new code. You would write it beautiful and perfect. You would never have to revisit your code and you will never have to maintain projects ten years old. In an ideal world...
Unfortunately, we live in a reality that is not ideal. We have to understand, modify and enhance ages-old code. We have to work with legacy code. So what are you waiting for? Let's get our heads into this first tutorial, get the code, understand it a little bit and create a safety net for our future modifications.
Posts in this series

Refactoring Legacy Code: Part 1 - The Golden Master

Refactoring Legacy Code: Part 2 - Magic Strings & Constants

Refactoring Legacy Code: Part 3 - Complex Conditionals

Refactoring Legacy Code: Part 4 - Our First Unit Tests

Refactoring Legacy Code: Part 5 - Game's Testable Methods

Refactoring Legacy Code: Part 6 - Attacking Complex Methods

Refactoring Legacy Code: Part 7 - Identifying the Presentation Layer

Refactoring Legacy Code: Part 8 - Inverting Dependencies for a Clean Architecture

Refactoring Legacy Code - Part 10: Dissecting Long Methods with Extractions

Refactoring Legacy Code - Part 11: The End?



