Description
Cette formation s’adresse aux développeurs et équipes techniques en charge d’applications Java Swing existantes. Elle permet de comprendre en profondeur l’architecture des interfaces Swing, d’identifier les bonnes pratiques de maintenance et d’évolution, et de sécuriser les performances et la stabilité des applications en production. La formation aborde également les stratégies de modernisation progressive vers JavaFX ou des architectures plus récentes, en tenant compte des contraintes techniques et organisationnelles des systèmes d’information.
Objectifs
- Comprendre le fonctionnement et l’architecture des applications Java Swing existantes
- Maintenir et faire évoluer des interfaces Swing en environnement de production
- Améliorer la performance, la maintenabilité et la qualité du code
- Anticiper et préparer une stratégie de modernisation vers JavaFX ou le Web
Récapitulatif
Public
Développeurs Java en charge d’applications Swing existantes, Équipes de maintenance et de support applicatif Java.
Prérequis
Expérience en développement ou en maintenance d’applications Java.
Méthodes et modalités pédagogiques
Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.
Moyens et supports pédagogiques
Mise à disposition d’un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d’une documentation pédagogique numérique pendant la formation
La formation est constituée d’apports théoriques, d’exercices pratiques et de réflexions
Dans le cas d’une formation sur site Entreprise, le client s’engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard…) au bon déroulement de l’action de formation conformément aux prérequis indiqués dans le programme de formation
Modalités de suivi et d'évaluations
Auto-positionnement des stagiaires avant la formation
Émargement des stagiaires et formateur par 1/2 journée
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Auto-évaluation des acquis de la formation par les stagiaires
Questionnaire de satisfaction à chaud et à froid à l’issue de la formation
Programme détaillé
Contexte et positionnement de Swing aujourd’hui
- Historique et rôle de Swing dans l’écosystème Java
- Pourquoi Swing est encore présent dans les SI
- Limites et contraintes pour les nouveaux développements
- Positionnement de JavaFX et des architectures Web
Architecture Swing et composants fondamentaux
- Hiérarchie des composants Swing
- JFrame, JDialog, JPanel et conteneurs
- Gestion des modèles (ListModel, TableModel, TreeModel)
- Séparation interface / données
Gestion des événements
- Modèle événementiel Swing
- Listeners et actions
- Bonnes pratiques pour éviter le couplage excessif
- Lisibilité et structuration du code événementiel
Layouts et ergonomie
- Principes de mise en page Swing
- Layouts standards et cas d’usage
- Gestion du redimensionnement
- Amélioration ergonomique d’interfaces existantes
Threading et performance
- Event Dispatch Thread (EDT)
- Blocages et problèmes de réactivité
- SwingWorker et traitements asynchrones
- Bonnes pratiques de performance
Composants avancés
- JTable : modèles, performance, édition
- JTree : navigation et structuration
- Menus, barres d’outils et raccourcis
- Composants personnalisés
Architecture logicielle et dette technique
- MVC appliqué à Swing
- Découplage des couches
- Refactoring d’écrans existants
- Amélioration de la testabilité
- Gestion de la dette technique
Look & Feel et homogénéisation
- Principes des Look & Feel
- Harmonisation graphique
- Contraintes d’ergonomie et d’accessibilité
Stratégies de modernisation
- Identifier les écrans critiques
- Découpler la logique métier
- Interopérabilité Swing / JavaFX
- Migration progressive vers JavaFX
- Comparaison Swing / JavaFX / Web
Sécuriser les évolutions
- Stabiliser une application Swing existante
- Gestion des correctifs et évolutions
- Documentation technique utile
- Préparer une trajectoire de sortie maîtrisée
Synthèse et bonnes pratiques
- Checklist maintenance Swing
- Critères d’aide à la décision DSI
- Retour d’expérience et échanges