70 lines
2.3 KiB
Markdown
70 lines
2.3 KiB
Markdown
# 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.
|
||
|
||
1. **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 ! |