3. Variables y funciones

3.9. Refactorizar

Con los conocimientos que ya poseemos sobre variables y funciones podemos crear un código mucho más legible, flexible y reutilizable. En programación se usa el término refactorizar para englobar una serie de prácticas que implican optimizar el código que ya hemos escrito para simplificarlo y hacerlo más claro. Normalmente, cuando queremos realizar alguna tarea en nuestro código (sea cual sea nuestro nivel como programadores) trataremos de dividir la tarea en cuestión en pequeños pasos e ir solucionándolos poco a poco, comprobando en cada paso que el código hace lo que queremos. De esta manera, es más sencillo que si escribimos cien líneas de código de una vez, ya que si nuestro programa no funcionara, tendríamos que revisar esas cien líneas de código en busca de algún error.

Una vez completada la tarea, podemos echar la vista atrás e identificar partes de nuestro código que podríamos optimizar y que no hemos tenido en cuenta cuando estábamos inmersos en solucionar la tarea. Pongamos el siguiente ejemplo: nuestra tarea es dibujar una diana.

Figura 39. La diana
Fuente: elaboración propia.

Podemos ver que hay ciertos valores que se repiten, como las coordenadas del centro de los círculos, por lo que podríamos almacenarlos en variables y así en caso de querer cambiarlos solo tendremos que hacerlo una vez en el código. También podemos almacenar el tamaño de la diana en una variable y hacer que los círculos interiores sean proporcionales al tamaño total:

Figura 40. La diana con variables
Fuente: elaboración propia.

Lo siguiente que podríamos hacer es encapsular el código que dibuja la diana en una función:

Figura 41. La diana en una función
Fuente: elaboración propia.

Y por último, para hacer más flexible la función que dibuja la diana y que nos permita dibujarla en distintas posiciones y de distintos tamaños, podríamos añadirle parámetros a la función drawDiana():

Figura 42. La función drawDiana() con parámetros
Fuente: elaboración propia.