0% ont trouvé ce document utile (0 vote)
15 vues3 pages

Java

Le projet JavaFX vise à développer une application de dessin permettant aux utilisateurs de créer, enregistrer et charger des formes géométriques tout en journalisant leurs actions. L'application utilise des design patterns tels que Factory Pattern pour la création de formes, Singleton pour la connexion à la base de données SQLite, et Strategy Pattern pour la journalisation. Cette architecture rend l'application modulaire, extensible et maintenable.

Transféré par

chediezzine12
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 DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
15 vues3 pages

Java

Le projet JavaFX vise à développer une application de dessin permettant aux utilisateurs de créer, enregistrer et charger des formes géométriques tout en journalisant leurs actions. L'application utilise des design patterns tels que Factory Pattern pour la création de formes, Singleton pour la connexion à la base de données SQLite, et Strategy Pattern pour la journalisation. Cette architecture rend l'application modulaire, extensible et maintenable.

Transféré par

chediezzine12
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 DOCX, PDF, TXT ou lisez en ligne sur Scribd

Realiser par : Ezzine Chadi , Sebai Meryem

📄 Rapport du Projet JavaFX – Application de Dessin


🎯 Objectif du projet :
Développer une application JavaFX permettant à l'utilisateur de :

● Sélectionner des formes (rectangle, cercle, ligne)02

● Les dessiner dans une zone graphique

● Enregistrer les dessins dans une base de données

● Charger les formes enregistrées

● Journaliser les actions selon 3 stratégies : console, fichier ou base de données

Architecture de l’application:
Diagramme de cas d’utilisation :

Architecture de l’application
✅ 1. Création des formes géométriques
Fonctionnalité : Créer différentes formes selon le choix de l’utilisateur
Design Pattern : Factory Pattern
Pourquoi ? Pour créer dynamiquement des formes (Circle, Rectangle, Line) selon leur type sans modifier le code principal.

Classes concernées :

● Shape (interface)

● CircleShape, RectangleShape, LineShape

● ShapeFactory

● ShapeType (enum)
Connexion à la base de données (SQLite)
Fonctionnalité : Lire et écrire les formes + logs dans une base SQLite
Design Pattern : Singleton
Pourquoi ? Pour garantir une seule connexion active à la base de données.

Classe :

● DatabaseInitializer

✅ 3. Système de journalisation (Logging)

Fonctionnalité : Enregistrer les actions de l’utilisateur (dessin, chargement...)


Design Pattern : Strategy Pattern
Pourquoi ? Pour changer dynamiquement la méthode de journalisation.
💡 Exemple de scénario utilisateur :
1. L’utilisateur sélectionne “Cercle”

2. Il clique sur la zone de dessin → Un cercle est dessiné

3. L’action est enregistrée dans le fichier de log (ou console/BDD)

4. La forme est sauvegardée dans la base

5. En cliquant sur “Charger”, toutes les formes sont récupérées et redessinées

📝 Conclusion
L’utilisation des design patterns a permis de rendre l’application :

● Modulaire : chaque composant est indépendant

● Extensible : facile d’ajouter un nouveau type de forme ou stratégie de log

● Maintenable : séparation des responsabilités claire

Vous aimerez peut-être aussi