🏦 Application Bancaire – AP3
Application de gestion bancaire développée en Java avec JavaFX et SceneBuilder
À propos du projet
AP3 est une application de gestion bancaire développée en Java avec une interface graphique construite via FXML et SceneBuilder. L'application simule un système bancaire complet permettant de gérer des comptes, des transactions et les informations des clients.
Ce projet démontre l'application concrète des principes de la Programmation Orientée Objet (POO), notamment l'encapsulation avec des comptes bancaires sécurisés, et l'architecture MVC pour une séparation claire des responsabilités.
Fonctionnalités principales
Gestion des clients
Création, modification et suppression des profils clients avec leurs informations.
Comptes bancaires
Gestion de comptes courants et épargne avec solde, numéro et statut.
Transactions
Dépôts, retraits et virements entre comptes avec historique complet.
Encapsulation stricte
Tous les attributs privés, accès uniquement via getters/setters contrôlés.
Interface JavaFX
Interface graphique moderne créée avec SceneBuilder et fichiers FXML.
Tableau de bord
Vue synthétique des comptes et des transactions récentes.
Étapes du développement
Architecture et conception des classes
Conception de la structure objet : classes Client, CompteBancaire, Transaction avec leurs attributs privés et méthodes de gestion. Mise en place des principes POO pour une encapsulation robuste.
Interface graphique avec SceneBuilder
Création des écrans de l'application avec SceneBuilder : fenêtres de connexion, tableau de bord, gestion des comptes. Liaison FXML avec les contrôleurs Java.
Logique métier et contrôleurs
Implémentation des contrôleurs MVC pour gérer les interactions : création de compte, dépôts, retraits et virements avec validation des données.
Persistence des données
Mise en place de la sauvegarde des données clients et comptes. Gestion de l'état de l'application entre les sessions.
Compétences acquises
- Maîtrise approfondie de la Programmation Orientée Objet (classes, encapsulation, héritage, polymorphisme)
- Développement d'applications Desktop avec JavaFX et FXML
- Design d'architecture d'application avec le pattern MVC
- Utilisation de SceneBuilder pour la conception d'interfaces graphiques
- Gestion de la persistence et des données en mémoire
- Validation et sécurisation des entrées utilisateur
Technologies utilisées
- Langage : Java 11+
- Framework UI : JavaFX
- Conception UI : SceneBuilder
- Markup interface : FXML (XML)
- IDE : Eclipse / IntelliJ IDEA
- Paradigme : POO, MVC
Améliorations futures
- Intégration d'une vraie base de données (MySQL, PostgreSQL)
- Implémentation d'un système de virement international
- Ajout de notifications par email ou SMS
- Création d'une API REST pour une application mobile complémentaire