2.3 KiB
TP Programmation orientée objet
1. Introduction
Le but principal de ce TP est d'implémenter une classe Auteur. Ainsi qu'une classe Livre et Bibliothèque. Il y a volontairement pas/peu d'indication sur le code. Seuls les attributs et méthode nécessaires sont indiqués. Leurs implémentations sont libre et dépendent de chacun.
2. Classe Auteur
La classe Auteur est une classe ayant 2 ou 3 attributs selon l'auteur.
- Un nom (ou pseudonyme)
- Année de naissance
- Année de décès (s'il y a)
- Sinon mettre l'attribut à False
La classe Auteur ne possède pas de méthode.
3. Classe Livre
La classe livre possède différents attributs :
- Un titre
- Un genre (Policier, Fantastique ...)
- Un auteur (qui doit être un objet Auteur)
La classe Livre ne possède pas de méthode.
4. Classe bibliothèque
La classe bibliothèque possède deux attributs principaux :
- Un type de rayon (Policier, Fantastique ...)
- Des livres (représenté par un tableau par exemple) (Le tableau doit contenir des objets Livre)
La classe bibliothèque possède différentes méthodes :
- Une méthode permettant de savoir si un livre est disponible.
Méthode parcourant l'ensemble des livres de la biblio pour savoir si un livre est disponible param nom_livre : (str) Nom du livre à rechercher return : (int) Indice du livre si dispo, -1 sinon"""
- Une méthode permettant de prêter un livre
Méthode permettant de preter un livre s'il est dispo. param nom_livre : (str) nom du livre à emprunter return : (Livre/bool) Livre si emprunt possible, False sinon
- Une méthode permettant d'ajouter un livre dans son rayon.
Méthode permettant d'ajouter un livre. param livre (Livre): Livre à ajouter return : (str) précise si le livre est ajouté ou non
5. Création des objets
Créer la classe est bien, maintenant il faut manipuler les objets.
- Créer 2 bibliothèques contenant chacune au moins 2 livres de deux auteurs différents.
6. Pour aller plus loin
Ici, il est possible d'ajouter n'importe quel attributs et/ou méthodes de votre choix. Il faut s'entraîner, essayer d'aller le plus loin possible. Alors essayez, testez !