0% ont trouvé ce document utile (0 vote)
21 vues4 pages

Projet D'application Python Avancée

Le projet consiste à développer une application de gestion de bibliothèque en Python, intégrant la programmation orientée objet, la gestion des exceptions, et la persistance des données. Les fonctionnalités incluent la gestion des livres et des membres, une interface en ligne de commande, et des visualisations statistiques avec Matplotlib. Le projet doit être réalisé individuellement et inclut des livrables tels qu'un référentiel GitHub, un rapport détaillé, et une vidéo de présentation.

Transféré par

khaoula MOUSSA
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
21 vues4 pages

Projet D'application Python Avancée

Le projet consiste à développer une application de gestion de bibliothèque en Python, intégrant la programmation orientée objet, la gestion des exceptions, et la persistance des données. Les fonctionnalités incluent la gestion des livres et des membres, une interface en ligne de commande, et des visualisations statistiques avec Matplotlib. Le projet doit être réalisé individuellement et inclut des livrables tels qu'un référentiel GitHub, un rapport détaillé, et une vidéo de présentation.

Transféré par

khaoula MOUSSA
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

ENSAO GI3 PROGRAMMATION AVANCEE EN PYTHON

Université Mohammed Premier


École Nationale des Sciences Appliquées
Filière Génie Informatique

Programmation avancée en Python


Mini projet d’application
Système de Gestion de Bibliothèque
A. Objectif du projet
Vous développerez une application complète de gestion de bibliothèque en Python qui
intègre :
 Un backend POO pour la logique métier
 La gestion des exceptions pour les erreurs métier
 La persistance des données dans des fichiers
 La génération de rapports statistiques avec Matplotlib
 La persistance des données (fichiers JSON/CSV)
B. Fonctionnalités Requises
1. Module de Gestion des Livres (POO)
 Classe Livre avec attributs :
o ISBN, titre, auteur, année, genre, statut (disponible/emprunté)
 Classe Membre avec :
o ID, nom, liste des livres empruntés
 Classe Bibliotheque avec méthodes :
o Ajouter/supprimer des livres
o Enregistrer des membres
o Gérer les emprunts/retours
o Sauvegarder/charger les données

ZAKARIA HAJA 1 2024/2025


ENSAO GI3 PROGRAMMATION AVANCEE EN PYTHON

2. Interface en Ligne de Commande


 Menu interactif avec les options :

 Validation des saisies utilisateur


3. Interface Graphique (Tkinter) (Optionnel)
 Fenêtre principale avec onglets :

 Widgets requis :
o Tableaux
o Formulaires de saisie
o Boutons d'action avec gestion d'erreurs
o Messages d'alerte personnalisés
4. Gestion des Erreurs (Exceptions)
 Créer des exceptions personnalisées :
o LivreIndisponibleError
o QuotaEmpruntDepasseError
o MembreInexistantError
o LivreInexistantError
 Intercepter ces exceptions dans le flux principal
5. Tableau de Bord Statistique
 Visualisations : Générer des graphiques avec Matplotlib
o Diagramme circulaire : % de livres par genre

ZAKARIA HAJA 2 2024/2025


ENSAO GI3 PROGRAMMATION AVANCEE EN PYTHON

o Histogramme : Top 10 des auteurs les plus populaires


o Courbe temporelle : Activité des emprunts (30 derniers jours)
intégrer TensorFlow/Keras dans le projet en ajoutant une
fonctionnalité de recommandation de livres basée sur les genres et
l'historique d'emprunt
o …..
6. Gestion des Données
 Sauvegarde dans des fichiers texte/JSON :
o [Link] (format: ISBN;titre;auteur;année;genre;statut)
o [Link] (format: ID;nom;livres_empruntés)
o [Link] (format: date;ISBN;ID_membre;action)
intégrer TensorFlow/Keras dans le projet en ajoutant une fonctionnalité
de recommandation de livres basée sur les genres et l'historique d'emprunt
 Chargement des données au démarrage

C. Organisation

 Projet individuel
 Le lien GitHub doit être déposé sur Classroom
 Livrables :
o Référentiel GitHub (Voici un exemple de structure du repo Github)

ZAKARIA HAJA 3 2024/2025


ENSAO GI3 PROGRAMMATION AVANCEE EN PYTHON

 Contenu des Fichiers


o [Link] :
 Votre nom
 Guide d'installation
 Exemples d'utilisation
o [Link] (4-6 pages) :
 Diagramme de classes UML
 Explications des algorithmes clés
 Captures d'écran des visualisations
 Difficultés rencontrées et solutions
intégrer TensorFlow/Keras dans le rapport
o Vidéo de Présentation (4 min max) :
 Démonstration des fonctionnalités
 Explication technique des parties complexes
 Présentation des visualisations générées
 Liens utiles :
o [Link]
NcOtoC6GglhF3ncJ5rLwQrLGnV
o [Link]
 Date limite : 28 Juin 2025 Le lien GitHub doit être déposé sur Classroom
 NB : les projets avec des codes copier-coller ils ne seront absolument pas pris en
compte.

D. Critères d'évaluation

 POO
 Gestion des erreurs
 Persistance des données
 Qualité des visualisations
 Documentation et rapport
 Vidéo de Présentation

ZAKARIA HAJA 4 2024/2025

Vous aimerez peut-être aussi