Kata du jeu de la vie
Voici une implémentation du kata du jeu de la vie.
Les règles sont décrites ici.
Je trouve le résultat obtenu assez verbeux et contre-intuitif sur certains points. Ma conception a été guidée par les règles de la gymnatisque objet (object calisthenics). Globalement je suis satisfait, ce n'est surement pas la meilleure implémentation du monde mais j'ai vraiment du pousser très loin ma reflexion objet et j'ai appris de nouveaux automatismes.
Règles de la gymnastique objet :
- Un niveau d'indentation par méthode
- Ne pas utiliser de else
- Encapsuler les types primitifs et chaines
- Encapsuler les collections
- Une seule indirection par ligne
- Pas d'abréviation
- Garder toutes les entités petites
- Au plus 2 variables d'instance par classe
- Pas d'accesseurs (get, set, etc.)
L'implémentation comporte de nombreuses bibliothèques comme Guava, Guice ou encore Mockito. C'est clairement de l'artillerie lourde pour ce genre d'exercice. Toutefois, un kata est fait pour s'entrainer et j'ai souhaité me perfectionner dans l'utilisation de ces bibliothèques.