Practicando TDD: String Calculator Kata

En esta ocasión vamos a realizar una sesión práctica de TDD en la que trabajaremos con la kata String Calculator.

Elegimos este ejercicio porque es de nivel básico y cualquier desarrollador podrá seguirla. Anímate, trabajaremos en parejas o en grupo. El objetivo no es completar toda la kata, sino practicar entre todos técnicas de TDD con ella con periodos de diálogo entre medias.

Anímate y ven. No olvides ser puntual y traer portátil.

Este es el plan, con una duración de 2 horas de sesión:

• 18:45: Recepción de asistentes.

• 19:00: Empezamos puntuales (15 min). Introducción, explicación de la kata y comprobación de que tenemos un entorno de tests preparado.

• 19:15: Primera iteración (30 min). Practicando TDD en parejas o en grupo.

• 19:45: Debate entre todos (15 min). diálogo de las diferentes estrategias que hemos seguido, problemas encontrados, etc.

• 20:00: Segunda iteración (30 min). seguimos practicando aplicando lo aprendido.

• 20:30: Debate y muestra de código (15 min)

• 20:45: Iremos a tomar algo a un bar/cafetería cercano para seguir un rato quien tenga ganas.

Será una sesión colaborativa, amena, informal y divertida. Para no perder mucho tiempo sería genial que vinierais con los siguientes “deberes” hechos, por favor 🙂

• Traer el portátil con todo configurado para empezar a programar: tu editor/IDE, tu lenguaje favorito (el que quieras) y el entorno de ejecución de test unitarios funcionando.

• No es obligatorio pero si muy recomendable. Así tendremos más tiempo para dedicarle a la kata.

¿No tienes entorno de test configurado? Te recomiendo este repositorio donde tenéis entornos de test para Java, Javascript, PHP y Ruby (¡Gracias Luis!):

https://github.com/luisrovirosa/test-bootstrap

Si tienes dudas deja un comentario o entra a nuestro canal #alicante en el Slack de la comunidad de Software Craftsmanship.

Jeroen Derks

Author: Jeroen Derks

Jeroen is the founder of the Alicante Tech meetup group. His current day job is to mostly build all kinds of applications, ranging from IoT to educational to corporate.