Introducción al refactoring


Comencemos por la definición. Más concretamente, la que puede encontrarse en este artículo de Wikipedia.

La primera definición (no tan buena)

“La refactorización es una técnica de la ingeniería de software para reestructurar un código fuente, alterando su estructura interna sin cambiar su comportamiento externo.”

Wikipedia

La definición es correcta desde el punto de vista de un formador, alguien que ya posee este conocimiento que se quiere hacer llegar. Sin embargo, las palabras no transmiten nada más allá de lo que meramente expresan. Es decir, de ella podemos extraer:

Si nos paramos a pensar un momento y somos capaces de ponernos en el punto de vista de un aprendiz, seremos capaces de detectar en ella la ausencia de las dos partes verdaderamente importantes, las más esenciales para transmitir el concepto. Estas son el por qué y el para.

La segunda definición (mucho mejor)

Veamos ahora por el contrario como es descrito el refactoring en la siguiente definición, extraída del libro Refactoring Workbook, escrito por William C. Wake.

“La refactorización es el arte de mejorar el diseño de un código existente de una manera segura. Nos provee de formas para organizar un código problemático y nos da las pautas para mejorarlo.”

William C. Wake

De ella seguimos extrayendo:

Pero además tenemos:

Conclusión

El fin de la refactorización es la mejora en el diseño del código existente.

2019-03-15
Escrito por Samuel de Vega.
Etiquetas