¡Hola!
Cuarta clase de Diseño de Sistemas en pantuflas!
Resumen
En esta clase estuvimos analizando algunos Code smells (o indicios que denotan que puede haber un problema de diseño detrás) y refactoring.
Para hacer el refactor, nos apoyamos en algunas de las herramientas que nos provee el IDE (como fue renombrar clases asegurando la consistencia, algo que usando un editor de texto más limitado tendríamos que controlar a mano). Fuimos teniendo en cuenta algunas cuestiones comunes a cualquier refactor:
- no hacer todo el refactor de una, sino que ir haciendo commits pequeños
- después de cada cambio en el diseño, correr los tests para validar que los resultados obtenidos no hayan variado
Algunos refactors que hicimos:
- delegar (extraer en un nuevo método)
- renombrar
- indentar
Además, vimos por qué el testing es importante: no sólo nos permite validar que nuestro código se adecúe a los requerimientos, sino que son una base clave para poder hacer cualquier refactor (estando seguros de que no rompimos nada).
Les dejamos un apunte sobre manejo del cambio en el que pueden ver lo que hablamos hoy.
Para la próxima clase
Apuntes
Introducción a la inyección de dependencias
Testing los puntos 1 al 8 (hasta el punto 9, Impostores)
Material complementario
De manera adicional, agregamos un articulo de Martin Fowler sobre deuda ténica