Formation Swing – Développer un client riche avec Swing
Objectifs
- Comprendre et maîtriser les principes d'architecture du framework Swing
- Développer efficacement des interfaces complexes (par framework ou à l'aide d'outils)
- Maîtriser les comportements des composants avancés (arbre, table, etc...)
- Comprendre et mettre en oeuvre le déploiement d'une application Swing
Contenu
Introduction
- Historique et genèse de Swing
- Présentation des plate-formes Client Riche Java (RCP)
- Eclispe RCP
- Netbeans
Architecture du framework Swing
- Déclaration d'un arbre de composants (Component et Container, Pattern Composite)
- Les différentes catégories de composants (Container, composants affichage, contrôles)
- Le modèle MVC de Swing : un modèle adapté (Modèle UI-Delegate)
- La gestion des modèles de composants (GUI-State et Application State)
- Gestion des fenêtres et des containers principaux (JFrame, JDialog)
- Gestion des menus (JMenuBar, JMenu, JMenuItem)
- Gestion du LookAndFeel
La gestion des layouts
- Positionnement absolu ou disposition par Layout
- Présentation et composition des Layouts standards (FlowLayout, BorderLayout, GridLayout, GridBagLayout, CardLayout)
- Les Layouts avancés
- FormLayout du framework JGoodies
- GroupLayout, outil Matisse Sun
- Présentation des outils graphiques (WYSIWYG)
- VisualEditor d'Eclipse
- Matisse Netbeans 5
- Conclusion : quelle stratégie choisir ?
La librairie des composants Swing
- La hiérarchie des JComponents
- Les composants simples (JLabel, JButton, JPanel, JList)
La gestion des événements
- Principe des Listeners et du modèle JavaBean
- Les deux types de notification (lightweight et statefull notification)
- La hiérarchie des événements
- Programmation par Adapter et utilisation des classes internes
La gestion des threads
- Principe de la programmation Single Thread (EDT : Event Dispatching Thread)
- La librairie SwingUtilities (invokeLater, invokeAndWait)
- Utilisation du SwingWorker
Les composants et les principes avancés
- JProgressBar
- Les composants textes (JTextfield, JPasswordField, JTextArea)
- FormattedTextField
- JTable (alimentation par TableModel)
- JTree (création d'un TreeModel, TreeNode, TreeCellRenderer, TreeCellEditor)
Déployer une application Swing
- Présentation JavaWebstart
- Le format JNLP
- Gestion de la sécurité (signature des jars, automatisation avec Ant/Maven)
Le futur de Swing
- Présentation de Mustang (JDK 6)
- Présentation de l'initiative SwingLabs
Durée
3 jours (21h)
Tarif (déjeuners inclus)
1450 € (HT)
Lieu
Répartition
40% théorie
60% pratique
Pré-requis
Connaissance de Java
Public
Architecte
Développeur
Chef de projet
Dates des sessions
28 au 30 janvier 2008
17 au 19 mars
26 au 28 mai
21 au 23 juillet
22 au 24 septembre
3 au 5 novembre
Inscription
Intra-entreprise
Renseignements
+33(0)1.45.26.19.15
training@zenika.com
Télécharger la fiche !