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

Paris 9ème

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

Bulletin d'inscription

Intra-entreprise

Sur demande

Renseignements

+33(0)1.45.26.19.15
training@zenika.com