Le monde java proposait jusqu’à présent les composants swing pour définir des interfaces riches. La lourdeur d’exécution et le design général de ces composants ne pouvaient pas en faire un concurrent sérieux aux langages plus spécialisés.
L’avènement des composants SWT et les framework utilisant cette API tels que JFace et Eclipse, montrent des résultats très prometteurs. L’environnement de développement Eclipse est l’ambassadeur de cette technologie, la présentant comme une alternative très sérieuse aux composants proposés par Microsoft.
Objectifs de la journée
Cette formation vise à présenter les briques principales de SWT et les différentes démarchent de conception et de développement. La présentation et l’utilisation de JFace et des plugins Eclipses dans un contexte projet, tentent à apporter des éléments de réponse sur l’utilisation de cette technologie pour le développement d’interfaces riches puissantes.
1. Notions élémentaires
- Client riche vs Client Web ou quand l’utilisateur a besoin d’interaction forte avec ses outils
- Etat de l’art des composants graphiques en Java et différences : AWT, Swing, JFC, SWT
- Définition des composants graphiques d’une interface (Boutons, Listes, ...)
- Séparation présentation/Modèle : Les notions élémentaires et les règles de conception, MVC, MVP
- Les patterns principaux des interfaces riches : pattern ‘Observer’ et ‘Listener’, modèles abstraits
2. Standard Widget Toolkit :
- Comment ça marche ? : Abstraction du système d’exploitation, la gestion de la mémoire, les dépendances, le déploiement d’une application SWT.
- Premier pas : Présentation de l’API, l’objet Display et l’objet Shell, premiers exemples
- Création de la première application SWT
- Les composants SWT : les standards, les simples et les composés, le graphisme (Button, Label, Text, Combo, Menu, TabFolder, GC ...).
- Le système de Layouting : politique de placement des composants graphiques
- Assemblage des composants dans un layout
- Définition des conteneurs et des actions : Les classes Composite, Group, les barres d’outils ...
- Création de composants personnalisés
- La gestion des évènements : L’interactivité entre l’utilisateur et la machine, ajout des Listeners aux controles en fonction des évènements traiter.
- Définition des évènements dans un système de composants
3. JFace, une abstraction SWT
- L’architecture JFace, une API complémentaire : liens avec SWT
- Création de la première application SWT-JFace
- Les viewers : composants de présentation JFace
- Les actions et contributions : liant entre l’interface cliente et le reste de l’application
- Réalisation de jeux d’actions
- Les dialogues : Communications avec l’utilisateur, les boîtes de dialogue et les sorciers "wizard"
- Réalisation de sorciers avec dialogue
- Les tableaux : un composant complexe et un mixe JFace-SWT
- Création d’un mini tableur
- Les préférences : Personnalisation d’une application client riche
- Réalisation de pages de préférences
4. Eclipse comme incubateur d’interface
- Présentation d’Eclipse : Fonctionnement, plugins, personnalisation, déploiement, etc.
- Logique de conception : Les vues, les composites, les actions, ...
- L’interface riche, un plugin Eclipse : principe des plugins, assemblage des éléments, interactivités, déploiement
- Définir une application plugin Eclipse en mode standalone
- Réutilisation des composants : intégration de composant SWT ou JFace
- Exemple d’application client riche utilisant Eclipse et intégrant JFace
- Mise à jour des composants d’Eclipse et stratégie de distribution
Pré requis :
Bonne maîtrise du langage java, notions d’interfaces riches, connaissance des principaux patterns, UML, framework MVC.
Profil des participants :
Développeur, chef de projet, architectes techniques, architectes logiciels.
Mise en pratique :
Cette formation est illustrée par des travaux pratiques.
Inscription
Pour plus d’information : formation@clever-age.com