Le CDA est un projet universitaire durant le second semestre de L2, qui consiste à développer un jeu de Nim et de puissance 4.
J'ai réalisé ce projet avec Nathan Rissot
et Agathe Papineau.
Pour chaque itération, nous avons dû réalisée un diagramme de cas d'utilisation, ainsi que les scénarios associés, ainsi que les diagrammes de classe.
Itération 1
Cette première itération, consiste à la réalisation d'un jeu de Nin programmée en Java.
Au cours de cette première itération, j'ai rédigé une Javadoc détaillée pour l'ensemble du projet,
en documentant minutieusement chaque classe, méthode et paramètre afin de faciliter la compréhension et l'utilisation du code,
et réalisé à l'aide des autres membres du groupes les schémas.
Itération 2
Cette deuxième itération, consiste à la réalisation d'un jeu de puissance 4.
Au cours de cette deuxième itération, j'ai écrit le code et la Javadoc.
Ce n'étais pas demander dans les consignes mais j'ai réalisé des tests unitaires pour un grande partie du projet à l'aide de JUnit5.
Itération 3
Cette troisième itération, consiste à mise en commun du code des deux itérations précédentes.
Au cours de cette itération, j'ai fait la fusion des deux jeux en utilisant le design pattern "Patron de méthode".
Les deux autres membres du groupe ont réalisé l’intégration des contraintes.
Durant cette itération, nous avons travaillé avec peu de temps car nous avions des partiels.
Itération 4
Cette dernière itération, consiste à ajouter la possibilité de jouer seul contre l'ordinateur.
Au cours de cette itération, J'ai corrigé les problèmes remonter durant la soutenance de l'itération précédente.
J'ai également réalisé l’intégration de "l'IA" dans l'ensemble du code, et les deux autres membres ont fait les algorithmes des "IA".
Ajout personnel
Interface graphique
Durant la dernière itération, en parallèle, j'ai fait une interface graphique simple à l'aide de JavaFX,
j'ai dû recoder une grande partie du projet pour fait un semblant de paterne observateur afin de faire fonctionner à la fois, le CLI, et la GUI.
Ajout IA Mistral
Quand j'ai vue dans la consigne qu'il fallait ajouter la possibilité de jouer contre l'ordinateur,
j'ai pensée à faire fonctionner en local un LLM, j'avais choisi mistral,
mais mes connaissances en IA n’étaient pas assez bonnes pour réussi, ce fut tout de même intéressant.
Recodage en C++
Durant l'été, j'ai appris que durant ma L3, j'allais faire du C++,
donc j'ai suivi le cours OpenClassroom sur le C++,
et j'ai donc réécrit l'itération 1, 2 et 3, afin de mettre en œuvre cette apprentissage, le code n'ai certainement pas le plus propre mais un bon projet pour commencer.