Kata CodeBreaker

Consigue descifrar el código de seguridad para acceder al super laboratorio científico del doctor Maligno. No te será fácil, pero seguro que será divertido!

Kata Tennis

En esta kata nos divertiremos implementando las reglas del tennis algo simplificadas.

Kata Anagramas

En esta kata nos centraremos en construir un algoritmo que sea capaz de obtener los anagramas de cada palabra de un diccionario. El principal objetivo es pensar sobre los algoritmos, su legibilidad, velocidad de ejecución y extensibilidad.

Kata Args

Nunca tratar con los argumentos de un programa de consola fue tan divertido :). En esta kata crearemos un parseador de estos parámetros en base a un esquema predefinido. ¡suerte!

Kata Minesweeper

Representa campos de minas del conocido juego buscaminas en esta kata donde tendrás que interpretar entradas del usuario y posteriormente representar el tablero.

Kata PrimerFactors

Juega con la teoría de factores primos implementando esta fascinante kata con la que verás cómo tu código se transforma a lo largo de las implementaciones de tus tests.

Kata Simple List

Las listas de datos son estructuras básicas que todos conocemos. Aún y todo, nos darán mucho juego practicando la codificación de nuestras propias listas. En esta kata codificarás hasta 3 implementaciones diferentes.

Kata FizzBuzz

Sencilla kata a nivel algorítmico que te ayuda a centrarte en las diferentes implementaciones posibles. Ideal para practicar los principios SOLID estrictamente. Fantástica para comenzar a conocer un nuevo lenguaje de programación.

Kata Bowling

Tendrás que implementar las reglas del juego de bolos a cada paso que des, complicándose el código poco a poco. Deberás de elegir una buena estrategia de tests para llegar a buen puerto.

Kata Roman Numerals

Trata de convertir números decimales a romanos y viceversa en esta entretenida kata. Ideal para practicar varios diferentes caminos para llegar a la solución.

Kata String Calculator

Fantástica kata para comenzar a practicar el testeo unitario y el avanzar paso a paso, escribiendo el mínimo código necesario. El nivel de complejidad del código irá aumentando poco a poco.