Refactorizar y no morir en el intento
Si procedes a arrancar grandes cantidades de código con desenfreno, te puedes encontrar en una situación peor que cuando empezaste.
Claramente, la refactorización es una actividad que debe llevarse a cabo, lentamente, deliberadamente, y con cuidado. Martin Fowler ofrece los siguientes tips sencillos sobre la forma de refactorizar sin hacer más daño que bien:
1. No trate de refactorizar y añadir funcionalidad al mismo tiempo.
2. Asegúrese de que tenga buenas pruebas antes de comenzar la refactorización. Correr las pruebas con la mayor frecuencia posible. De esta forma usted sabrá rápidamente si sus cambios no han roto nada.
3. Tomar pasos cortos y deliberados: mover un campo de una clase a otro, fusione 2 métodos similares en una superclase. Refactorizando a menudo implica hacer muchos cambios que resultan un cambio a gran escala. Si guardas tus pequeños pasos, y pruebas después cada paso, evitarás una depuración prolongada.