Les deux révisions précédentes
Révision précédente
Prochaine révision
|
Révision précédente
|
ens:cvda-2016:tpnote [2016/06/05 16:21] admin Cordier Amelie () [Phase 3. Implémentation de votre premier effet] |
ens:cvda-2016:tpnote [2016/07/15 08:30] (Version actuelle) |
==== Phase 1. Prise en main du projet ==== | ==== Phase 1. Prise en main du projet ==== |
| |
1. Avec votre navigateur préféré, connectez-vous à Github puis faites un fork du projet **P4Magic**. | 1. Avec votre navigateur préféré, connectez-vous à Github puis faites un fork du projet **P4Magic** qui se trouve à l'adresse suivante : https://github.com/ameliecordier/P4Magic-G4.git. Si vous n'avez pas de compte GitHub, vous pouvez cloner directement le projet, mais vous ne pourrez pas faire la dernière question du TP. |
| |
<note>TODO URL GitHub</note> | |
| |
2. Depuis votre IDE préféré, clonez le projet que vous venez de forker. | 2. Depuis votre IDE préféré, clonez le projet que vous venez de forker. |
3. Au besoin, fixez les imports. Vous pourriez être amenés à ajouter JUnit 4.12 et Harmcrest 1.3 dans Test Libraries. Si vous rencontrez des difficultés dans cette phase, n'hésitez pas à demander. | 3. Au besoin, fixez les imports. Vous pourriez être amenés à ajouter JUnit 4.12 et Harmcrest 1.3 dans Test Libraries. Si vous rencontrez des difficultés dans cette phase, n'hésitez pas à demander. |
| |
4. Exécutez le programme pour le tester en mode graphique. La première fenêtre vous permet de choisir le pourcentage de cases qui seront porteuses d'un effet. Ensuite, vous lancez la partie. Vous observerez que vous êtes en mode "debug" : les cases aux bordures vertes sont les cases sur lesquelles un effet (on ne sait pas lequel) s'applique. Les autres cases sont normales. Si vous arrivez à une configuration gagnante, le jeu vous le dira. Vous pouvez jouer un peu avec l'interface, mais ne perdez pas trop de temps ! | 4. Exécutez le programme pour le tester en mode graphique. La première fenêtre vous permet de choisir le pourcentage de chances qu'une case soit porteuse d'un effet. Ensuite, vous lancez la partie. Vous observerez que vous êtes en mode "debug" : les cases aux bordures vertes sont les cases sur lesquelles un effet (on ne sait pas lequel) s'applique. Les autres cases sont normales. Si vous arrivez à une configuration gagnante, le jeu vous le dira. Vous pouvez jouer un peu avec l'interface, mais ne perdez pas trop de temps ! |
| |
==== Phase 2. Découverte du code et prise en main des tests ==== | ==== Phase 2. Découverte du code et prise en main des tests ==== |
Avant d'aller plus loin, vous devez comprendre comment fonctionne le code. Rassurez-vous, vous n'avez pas besoin de maîtriser tous les détails pour réaliser le TP. | Avant d'aller plus loin, vous devez comprendre comment fonctionne le code. Rassurez-vous, vous n'avez pas besoin de maîtriser tous les détails pour réaliser le TP. |
| |
Pour mieux comprendre les explications qui suivent, n'hésitez pas à consulter le diagramme de classes disponible ci-dessous. | Pour mieux comprendre les explications qui suivent, n'hésitez pas à consulter le diagramme de classes disponible ici : {{:ens:cvda-2016:projetargouml.zip|diagramme UML}}. |
| |
Le projet est implémenté en respectant l'architecture MVC. Il contient 4 packages : ''model'', ''view'', ''controller'' (pour MVC) et un package contenant juste la classe principale qui permet de lancer le jeu. L'interface est réalisée en Swing. Le projet est accompagné de tests unitaires, stockés dans un répertorie séparé. | Le projet est implémenté en respectant l'architecture MVC. Il contient 4 packages : ''model'', ''view'', ''controller'' (pour MVC) et un package contenant juste la classe principale qui permet de lancer le jeu. L'interface est réalisée en Swing. Le projet est accompagné de tests unitaires, stockés dans un répertorie séparé. |
| |
<note>TODO Diagramme UML </note> | |
| |
Dans le package **controller**, le ''GameController'' assure la communication entre le modèle (qui contient la logique applicative du jeu, et la vue (qui contient la partie interface). | Dans le package **controller**, le ''GameController'' assure la communication entre le modèle (qui contient la logique applicative du jeu, et la vue (qui contient la partie interface). |
| |
<WRAP center round help 60%> | <WRAP center round help 60%> |
**Q1 :** dans votre compte-rendu, écrivez Q1 puis copiez-collez la sortie de JUnit qui s'affiche dans l'onglet "Test Results". (1 point) | **Q1 :** dans votre compte-rendu, écrivez Q1 puis faites une capture d'écran (lisible) de la sortie de JUnit qui s'affiche dans l'onglet "Test Results". (1 point) |
</WRAP> | </WRAP> |
| |
| |
<WRAP center round help 60%> | <WRAP center round help 60%> |
**Q2 :** dans votre compte-rendu, écrivez Q2 puis copiez-collez la sortie de JUnit qui s'affiche dans l'onglet "Test Results". (1 point) | **Q2 :** dans votre compte-rendu, écrivez Q2 puis faites une capture d'écran lisible de la sortie de JUnit qui s'affiche dans l'onglet "Test Results". (1 point) |
</WRAP> | </WRAP> |
| |
| |
<WRAP center round help 60%> | <WRAP center round help 60%> |
**Q3 :** dans votre compte-rendu, écrivez Q3 puis copiez-collez la sortie de JUnit qui s'affiche dans l'onglet "Test Results". (1 point pour le rapport, un point pour le code) | **Q3 :** dans votre compte-rendu, écrivez Q3 puis faites une capture d'écran lisible de la sortie de JUnit qui s'affiche dans l'onglet "Test Results". (1 point pour le rapport, un point pour le code) |
</WRAP> | </WRAP> |
| |
| |
<WRAP center round help 60%> | <WRAP center round help 60%> |
**Q6 :** exécutez en une seule fois l'ensemble des tests présents dans le projet. Dans le rapport, indiquez Q6 et copiez-collez la sortie de JUnit. (1 point) | **Q6 :** exécutez en une seule fois l'ensemble des tests présents dans le projet. Dans le rapport, indiquez Q6 et faites une capture d'écran lisible de la sortie de JUnit. (1 point) |
</WRAP> | </WRAP> |
| |
| |
<WRAP center round help 60%> | <WRAP center round help 60%> |
**Q8 :** vérifiez que votre code est bien commenté, bien documenté et bien formaté, puis générez la javadoc totale. (2 points) | **Q8 :** vérifiez que votre code est bien commenté, bien documenté et bien formaté, puis générez la javadoc totale. Ajoutez à votre rapport un screenshot qui prouve que la javadoc a bien été générée. (2 points) |
</WRAP> | </WRAP> |
| |
| |
<WRAP center round help 60%> | <WRAP center round help 60%> |
**Q10 :** Effectuez un dernier commit de votre projet. Assurez-vous de bien commiter la javadoc également. Ensuite, n'oubliez pas de pousser votre travail sur Github pour qu'il puisse être corrigé. Copiez l'URL de votre projet Github dans votre rapport. Déposez votre rapport sur [[https://tomuss.univ-lyon1.fr|Tomuss]]. (1 point) | **Q10 :** Effectuez un dernier commit de votre projet. Ensuite, n'oubliez pas de pousser votre travail sur Github pour qu'il puisse être corrigé. Copiez l'URL de votre projet Github dans votre rapport. Déposez votre rapport sur [[https://tomuss.univ-lyon1.fr|Tomuss]]. (1 point) |
</WRAP> | </WRAP> |
| |