Refactoring is the process of restructuring an existing body of code, altering its internal structure without changing its external behavior. "Red, green, refactor" means write a test, then write code to pass the test, then refactor the code while maintaining green status. > [!Tip]- Additional Resources > - [Refactoring](https://www.amazon.com/Refactoring-Improving-Existing-Addison-Wesley-Signature-ebook/dp/B07LCM8RG2[]()) > - [Design Patterns](https://www.amazon.com/dp/B000SEIBB8) > - [Refactoring to Patterns](https://www.amazon.com/Refactoring-Patterns-Joshua-Kerievsky/dp/0321213351)