Kata for legacy code hands-on session. The objective is to test and refactor the legacy TripService class.
The end result should be well-crafted code that express the domain.
You can watch the video with my solution. Although quite long, I explain my whole thought process while writting tests, how I break dependencies, the reasons for refactoring and re-desining the code (tests and production code), and why certain steps are important. I also cover how often I commit and why I do it.
The video is full of tips and tricks that can be used in any language.
https://www.youtube.com/watch?v=_NnElPO5BU0
Kata para una sesión práctica de código heredado. El objetivo es probar y refactorizar la clase de código heredado TripService.
El resultado final debe ser un código bien elaborado que exprese el dominio.
Puedes ver el video con mi solución. Aunque es bastante largo, explico todo mi proceso de pensamiento mientras escribo pruebas, cómo rompo las dependencias, las razones para refactorizar y rediseñar el código (pruebas y código de producción) y por qué son importantes ciertos pasos. También cubro con qué frecuencia realizo confirmaciones y por qué lo hago.
El video está lleno de consejos y trucos que se pueden aplicar en cualquier lenguaje.