Code Refactoring is the process of restructuring existing computer code without changing its external behavior. Goals of refactoring are to reduce complexity, improve source code readability, maintainability and extensibility.
Refactoring is usually motivated by noticing a code smell.
Design Patterns, Principles and Guidelines
- DRY = don’t repeat yourself (aka DIE = duplication is evil)
- KISS = keep it simple (and) stupid / straightforward
- YAGNI = you ain’t gonna need it