Refactorización: una pequeña introducción
Se trata de improvisar el diseño de un código existente. No estás agregando nuevas características, solo estás moviendo, separando, combinando, eliminando y renombrando. Es una manera de mantener el código flexible para que éste siempre sea sencillo de mantener y agregar nuevas características, aún y cuando crezca en complejidad.
La refactorización reestructura la parte interna del código fuente sin alterar su comportamiento externo. Mejor conocido como el proceso de limpiar el código, en ingeniería de software se usa a menudo como parte del desarrollo de software, de esta manera los desarrolladores alternan la inserción de nuevas funcionalidades y casos de prueba con la refactorización del código para mejorar su consistencia interna y su claridad.
La refactorización es la parte del mantenimiento del código donde no se arregla errores ni se añade funcionalidad. El objetivo, por el contrario, es mejorar la facilidad de comprensión del código o cambiar su estructura y diseño, así como eliminar código muerto, para facilitar el mantenimiento en el futuro.
Sin la refactorización, es fácil de entrar en una vía de un solo camino que guía directamente a la muerte del programa. Entre más pobre sea la estructura del código, más tendencias tienes a llegar a lo que se le llama “programación aproximadaâ€, es decir, se refiere al hecho que si no entiendes tu propio código, puedes seguir metiéndole cosas y moviéndole hasta que encuentres algo que funcione. Desafortunadamente, programación aproximada embrolla el código aún más y hace el trabajo más duras la próxima vez. Frecuentemente, terminarás con la necesidad de re-implementarlo todo.
Hay muchas maneras conocidas y desconocidas de refactorización. Martin Fowler y otros nos han hecho el favor de catalogar un numero de técnicas de refactorización. El libro de Fowler Refactoring tiene instrucciones específicas, paso a paso de cómo hacer cada uno de ellos.
Pruebas automáticas son la clave de la refactorización. Ellos hacen posible probar el código entre cada paso pequeño en la refactorización. Hacer este tipo de pruebas repetidas manualmente puede ser por mucho una tarea que consume mucho tiempo. Así que, si no tienes pruebas automáticas, tu probarás el código hasta el final de la refactorización. Cuando finalmente empieces a probar, pudieras encontrar muchos bugs.
Start Slide Show with PicLens Lite

