Développement Java

Conception d’interfaces graphiques pour les applications Java avec Swing, RCP et FX

Objectifs

  • Maîtriser la programmation d’interface utilisateurs type clients lourds pour des applications standards
  • Connaître les différentes approches que sont Swing, RCP et JavaFX
  • Apprendre à programmer des composants et fenêtres graphiques
  • Être capable de créer ses propres composants et personnaliser l’affichage des fenêtres
  • Savoir maîtriser l’extension des vues avec Eclipse RCP

Programme

Introduction à la programmation graphique
  • Les fondamentaux de l'IHM
  • Premier principe des IHM
  • Second principe des IHM
Swing
  • Introduction a Swing et positionnement par rapport à AWT et SWT
  • Concepts de Layouts et d’action handlers (gestionnaires d’évènements)
  • Les environnements et frameworks Swing les plus populaires
Les dispositions
  • Philosophie de redimensionnement des composants graphiques
  • Présentation des différents types Layouts
  • Créer son propre Layout
Conteneurs et composants
  • Fenêtres et boîtes de dialogue
  • JMenu, JPanel, JToolBar
  • JLabel, JTextField, JTextArea
  • JButton, JCheckBox
  • JList, JTable, etc
Personnalisation et options avancées
  • Créer ses propres composants
  • Mécanisme de undo/redo
  • L’i18n
  • Asynchronisme
Introduction au nouveau JavaFX
  • Introduction à JavaFx et positionnement avec Swing
  • Principes de base de JavaFx
  • Programmer des interfaces utilisateurs de manière déclarative
  • Les bonnes pratiques de conception
  • Binding des propriétés pour une synchronisation entre présentation et métier
Les composants de JavaFx
  • Les contrôles, les graphiques, les transformations
  • Les effets et animations pour des pages plus dynamiques
  • La classe JavaFX Layout et la mise en page
  • Les classes Observer pour la gestion instantanée d’impacts en cas de changements
  • Intégrer du son et de la vidéo dans vos interfaces utilisateurs
Introduction à RCP
  • Bref historique et exemples d’utilisation
  • Architecture : composantes d’une application RCP
  • Notion de modularité à base plug-in
  • Aperçu sur le PDE
Structure interne
  • Runtime et OSGI
  • Workbench générique et plug-ins
  • Séquence de démarrage
  • Les points d’extensions
  • SWT et JFace
Workbench4 et publication
  • L’interface utilisateur d’Eclipse et le lancement (IApplication)
  • Fenêtrage : menu, page, partie, les classes Advisor
  • Publication de Plug-in
  • UpdateSite et UpdateManager
  • Personnalisation des thèmes
Plug-ins
  • Notion d’identité
  • Configuration (MANIFEST.MF, plugin.xml)
  • Cycle de vie d’un plug-in
Contribuer à Workbench
  • Les points d’extension
  • Les perspectives
  • Les vues
  • Créer son propre point d’extension
Introduction à SWT
  • Les principes de base de SWT
  • Structure d’une application SWT
  • Composants, contrôles, évènements et threading
  • Les Layouts et la gestion des couleurs, fonts et images
  • Le pont SWT/AWT
Introduction à JFace
  • Notions de vues structurées
  • JFace dialogs et Wizards
  • Services de sélection
  • Pages de préférences
Les vues, commandes et actions
  • Introduction au concept de Vue
  • Comment créer une vue personnalisée
  • Menus, commandes et gestionnaires (Handlers)
  • Types d’actions
  • Chargement paresseux
  • Visibilité et activation
  • Les actions et sélections
Les éditeurs et Wizards
  • Notion d’Editeur et catégorisation
  • Différence entre View et Editeur
  • Réaliser un éditeur
  • Gestion de l’état d’un éditeur
  • Créer un Wizard et une page de Wizard
  • Personnaliser un Wizard et contrôler la page de progression
L’aide
  • Structure du système d’aide d’Eclipse
  • Aide contextuelle
  • Aide dynamique
  • Aide active
Please login to get access to the quiz
Introduction à l’objet (Prev Lesson)
(Next Lesson) Programmation avancée avec Java
Back to Développement Java