David Delemotte, Rénald Morice
Pour ce travail, nous avons utilisé AspectJ. Il faut compiler le projet avec ajc (compilateur d'AspectJ) au lieu de javac pour que les aspects fonctionnent. Tutoriel pour configurer IntelliJ: https://www.jetbrains.com/help/idea/aspectj.html
- Le code fourni n'a pas été modifié
-
aspects/Journalisation.aj
Enregistre dans un fichier (journalisation.txt) les coups joué et le résultat final -
aspects/AdversaireJ.aj
Implémente le multijoueur. Pour cela, deux joueur + une variable joueurCourant sont crées dans l'aspect. On change à chaque tour le joueur retourné par getCurrentPlayer -
aspects/FinJeu.aj
Empéche de jouer une fois la partie terminée et affiche le gagnant dans une jolie fenêtre. -
aspects/ColorisationSuiteGagnante.aj
Colore la suite gagnante en vert. Pour cela, on avait plusieurs solutions mais on a choisi de d'utiliser la réflexivité dans notre aspect, un concept intéressant en Java qui nous à permis d'accéder à des attributs et des méthodes normalement privés.