Hoy muchos afortunados estarán reunidos en el Code Retreat de Segovia practicando, compitiendo y picándose con el de al lado para ver quien es el más rápido, más hábil…
Por varios motivos no he podido estar… así que como premio de consolación os dejo mi versión del Conway’s Game of Life
Pese a haberlo repetido muchas (pero muchas) veces, todavía hay varias meteduras de pata al teclear … pero estoy bastante satisfecho. La primera prueba era de casi 15 minutos… y esta es la mitad (incluyendo un pequeño refactoring).
Es la primera vez que utilizo una herramienta para BDD:http://behaviour-driven.org/ al realizar una implementación y me ha creado una sensación agridulce.
- Es estimulante saber exactamente cuanto queda para terminar un proyecto
- Los criterios de aceptación están a un nivel tan alto que hay ocasiones en las que se pierde el ritmo… y eso que este ejercicio es muy pequeño. A mi me ocurre al pasar del caso de prueba para celdas que deben morir al celdas que deben vivir… hay un montón de código que escribir y ningún criterio de aceptación que sirva de guía.
- Para mi gusto, el código resultante es malo. Quizá sea sobreingeniería, pero yo veo al menos una clase Cell (que no aparece al guiarse sólo por los criterios de aceptación). Posiblemente con necesidades más complejas la clase Cell aparecería.
Y sí, ya sé que no sólo de BDD vive el hombre… y que en un proyecto real habría varios niveles de pruebas más.
Ahora me queda pendiente hacer la prueba en Java, con funciones de autocompletar en el propio IDE (con ruby funciona muy, muy mal…)
Bueno… ¿y los demás qué? ¿qué tal habéis pasado el día en Segovia?
Actualización
Como algunos han preguntado, las canciones que suenan son ãƒãƒƒãƒ”ィケンã‚ュウジョ y Night Out – Instrumental