Activité : Gérons nos livres

Consigne

Le but de cet activité est de retravailler avec des listes, de faire un tout petit peu d’algorithmique et de créer vos premiers tests unitaires en complétant ceux existants. Pour ce faire, nous allons modifier notre classe Copy afin de pouvoir gérer les empreunts des livres de la bibliothèque!

Pour ce travail on vous demande de prendre connaissance de la situation et de réaliser les tâches proposées. Si vous ne parvenez pas à terminer le travail en classe, il vous appartient de prendre sur votre temps pour l’achever.

Le code des tests unitaires doit être utilisé tel quel et ne doit pas être modifié. Le code de Copy doit être conforme à la spécification fournie ainsi qu’a sa classe de test CopyTest. CopyTest doit vous permettre de prouver que le code est conforme à la spécification.

Le travail est individuel. Vous pouvez communiquer, mais en respectant le code d’honneur.

Situation

Vous êtes développeur dans un projet de logiciel de gestion de bibliothèque. On vous charge de modifier la classe Copy qui représente les exemplaires physique des livres dans la bibliothèque. Vous recevez les classes BookTest, AuthorTest, CopyTest contenant certains tests unitaires qui tiennent lieu de spécification pour la réalisation des classes. La spécification des nouvelles méthodes à implémenter a été ajoutée dans la classe Copy, cette classe contient la définition des méthodes et la javadoc qui tient lieu de spécification pour les nouvelles méthodes de la classe.

Résultat attendu

Un projet Maven contenant les classes suivantes :

  • Book, Author, Copy et FormatCopy
  • BookTest, AuthorTest et CopyTest

Objectifs

À la fin de ce travail, vous devez :

  1. Connaître les listes.
  2. Connaître le principe TDD (Tests Driven Development)
  3. Être capable de créer des tests unitaires depuis la javadoc afin de valider le bon fonctionnement de votre code.

Ressources

Logiciel :

  • Maven
  • Visual Studio Code

Documents :

Mise en route

Pour commencer, vous devez créer un projet Maven pour cette activité. Rendez-vous dans le répertoire de vos projets et lancez la commande suivante :

1
mvn archetype:generate -DgroupId=ch.epai.ict.m226.gerons_nos_livres -DartifactId=gerons_nos_livres -DarchetypeArtifactId=archetype-quickstart-jdk8 -DarchetypeGroupId=com.github.ngeor -DinteractiveMode=false

Déplacez-vous dans le répertoire gerons_nos_livres et lancer la commande code . pour ouvrir le projet dans VSC (Visual Studio Code).

Téléchargez les classes de tests : Copy, BookTest, AuthorTest et CopyTest.

À vous de jouer !

Tâche

On vous demande de modifier les classes Copy et CopyTest conformément à la spécification ainsi qu’au diagramme de classes de la figure 1, en y incorporant la javadoc adéquate.

On vous demande également de réaliser ces deux classes selon le principe du TDD expliqué dans le support de cours pages 18 à 21 se trouvant sur moodle.

Fig. 1 – Diagramme de classe à réaliser
Fig. 1 – Diagramme de classes à réaliser

Demandez de l’aide en cas de besoin, mais essayez d’abord par vous-même et respectez toujours le code d’honneur !