2 Le jeu de la vie (Katas suggéré pour les mocks)

// Katas FORTEMENT suggéré

Le problème

Le kata proposé cette semaine est un peu plus complexe, donc il n’y en a qu’un seul.

L’objectif est de faire le kata Game of Life de Conway (autre version des instructions) en TDD et en respectant les principes OO vu en classe (et donc les mocks).

On y ajoute une contrainte supplémentaire pour uniformisé le tout. Le programme doit démarrer avec cette ligne de commande :

mvn exec:java -Dgrid=4x5 -DliveCells=1,2;1,4; -Dgenerations=2

Vous avez vu comment démarrer un main() et obtenir les propriétés avec System.getProperty(). Les arguments sont le format de la grille (4 de large x 4 de haut), le nombre de génération (2) et les cellules vivantes au format (x, y) où (0,0) est en haut à gauche (donc (1,2) et (1,4) - les autres cellules débutent mortes).

Au final, le programme doit écrire dans la console (System.out) la grille, par exemple (cette grille serait celle de la commande précédente à la génération 0, à la génération 2 tout est mort) :

* * * *
* # * *
* * * *
* * * *
* # * *

L’article de wikipedia vous offre des points de départs avec des patterns.

L’exercice (à faire)

  1. Vous devez faire ce kata en TDD et avec des mocks.
  2. Une fois votre solution faite, comparez là à celle-ci souvent utilisée comme exemple sur le net. Quelle(s) différence(s) notez-vous?