Activité : Gérons nos livres (rev. 1)

Consigne

Le but de cet activité est d’exercer la réalisation de classe et de méthodes. 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.

Pour réaliser ce travail vous aurez besoin de la classe LocalDate qui permet de représenter une date à partir de Java 8. Cette classe définie, entre autre, une méthode plusDays qui crée une nouvelle date en ajoutant un certain nombre de jour, ainsi que deux méthode isAfter et isBefore qui permettent de tester si la date se situe après ou avant une autre date passée en paramètre. Vous aurez également besoin de jeter une exception à l’aide de l’instruction throw new RuntimeException("un message");.

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.

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 la classe ArrayList<E>.
  2. Être capable d’utiliser des tests unitaires pour valider le bon fonctionnement de votre code.
  3. Être capable d’utiliser des commentaires «javadoc» pour documenter vos classes.

Ressources

Logiciel :

  • Maven
  • Visual Studio Code

Documents :

Mise en route

Pour commencer, vous devez récupérer le projet Maven qui se trouve sur le serveur gitlab de l’école. Pour cela, rendez-vous dans le répertoire de vos projets et lancez la commande suivante :

1
git clone https://gitlab.epai-ict.ch/m226/gerons-nos-livres.git --single-branch

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

À vous de jouer !

Tâche

On vous demande de réaliser les classes conformément au diagramme UML et aux tests unitaires. Vous devez également utiliser des commentaires « javadoc » pour automatiser la documentation de vos classes.

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 !