Newer
Older
Mathéo Beaudouin
a validé
## Analyse du code produit par ChatGPT par rapport au code attendu :
Mathéo Beaudouin
a validé
Mathéo Beaudouin
a validé
- Le code généré par l'IA a omis d'ajouter les constantes en les déclarant comme `public` et en utilisant `static`.
- Après des tests, nous avons constaté que :
- `const` est effectivement `static` par défaut.
- Si aucun modificateur d'accès n'est précisé pour une variable ou une méthode, celles-ci sont considérées comme `public` par défaut. Il n'y a donc rien à signaler ici.
Mathéo Beaudouin
a validé
- Dans le diagramme UML, les attributs `couleur` et `direction` sont indiqués comme étant `protected`. Cependant, dans la première version du code générée et déposée par l'IA, ces attributs ont été déclarés en `private`. On a donc corrigé cette erreur.
Mathéo Beaudouin
a validé
> **Après test de la classe :** tout fonctionne correctement, pas de nouvelle erreur.
Mathéo Beaudouin
a validé
### Pour ArrayPieceSquadro
Mathéo Beaudouin
a validé
- J'avais demandé de ne coder que les méthodes définies dans le schéma UML. L'IA a cependant ajouté les méthodes des deux interfaces qu'elle a redéfinies. Cela peut être vu comme une initiative positive, mais ce n'était pas explicitement demandé.
- Les messages d'erreur des exceptions générées sont en anglais, alors que le projet est spécifiquement en français. Nous avons donc corrigé ceci en mettant les commentaires en français.
Mathéo Beaudouin
a validé
Mathéo Beaudouin
a validé
Mathéo Beaudouin
a validé
- **Visibilité des constantes non précisées :** elle devrait être `public`.
- RAS, quand la visibilité n'est pas précisée, elle est `public` par défaut.
- **Types des variables d'instances non précisés de même que le retour des fonctions :**
- Évidemment, j'ai oublié de le préciser dans mon prompt.
Mathéo Beaudouin
a validé
- **Getters des lignes et colonnes jouables non faits :**
- ChatGPT est nul ? Probablement prompt pas correctement fait.
Mathéo Beaudouin
a validé
- **Méthodes `toJson`, `fromJson` et `__toString()` non implémentées :**
- ChatGPT est nul ? Probablement prompt pas correct... Sérieusement ?
- **Méthode `reculePiece` semble incorrecte :**
- La remise à zéro est censée mettre les pièces se dirigeant vers l'est à l'est, vers l'ouest à l'ouest, ainsi de suite... ce qui n'est pas fait : toutes les pièces est-ouest sont remises à l'ouest et toutes les pièces nord-sud sont remises au nord.
- **Méthode à tester** une fois les tests implémentés.
- **Méthode `gererSautsAdversaires` venue de nulle part.**
- **Méthode `jouePiece` à réécrire** puisqu'elle est censée utiliser `reculePiece` pour déplacer les pièces adversaires conformément aux règles du jeu.