“La refactorización es el proceso de cambiar un sistema de software de tal manera que no altera el comportamiento externo del código, pero mejora su estructura interna. Es una forma disciplinada de limpiar el código que minimiza las posibilidades de introducir errores. En esencia, cuando refactoriza, está mejorando el diseño del código después de que ha sido escrito. ”- Martin Fowler (Padre del olor del código).
Aunque la refactorización no agrega características o funcionalidades en un sistema de software, es un arma aguda para los desarrolladores en sus actividades de mantenimiento. Hace que un sistema de software sea más fácil de entender y más barato de modificar sin cambiar su comportamiento observable al cambiar su estructura interna.
Los propósitos de refactorización de acuerdo con M. Fowler se establecen a continuación:
- ¿Cuál es el otro aspecto del producto? El primero es desarrollar código para el software. ¿Qué es otro y qué debo estudiar para saberlo?
- ¿Cómo se crearon las aplicaciones de nivel de sistema, como el centro de software, en Ubuntu Linux?
- Si el hardware de la PC es muchas veces más potente de lo que era en los años 70 y 80, pero el software no tiene más funcionalidad (más allá de ser más amigable), ¿por qué cada nueva generación de software requiere computadoras aún más potentes para funcionar?
- ¿Existe una aplicación para descubrir el transporte público en Split, Croacia?
- ¿Cuál es el mejor software para la introducción de logotipo o video de animación?
- La refactorización mejora el diseño de software
- La refactorización hace que el software sea más fácil de entender
- La refactorización ayuda a encontrar errores
- La refactorización ayuda a programar más rápido
Encontrará un ejemplo de refactorización en este enlace:
¿Qué se entiende por refactorización de código? Explicar con el ejemplo.