Description
Ce programme de formation aborde l'architecture Eclipse, en se concentrant sur OSGi, les plugins et le développement d'interfaces utilisateur via le Standard Widget Toolkit (SWT) et la librairie JFace. Les participants apprendront à gérer l'injection et les annotations, ainsi que les contextes d'injection. La formation couvre également la gestion des dialogues, des préférences et des services E4, tout en intégrant des concepts tels que le data binding et la personnalisation via CSS. Ce cursus s'adresse aux développeurs souhaitant approfondir leurs compétences en développement d'applications Eclipse.
Objectifs
- Comprendre l'architecture E4/OSGi
- Construire des IHM SWT/JFace
- Concevoir une application Eclipse 4
- Maitriser la distribution de l'application
Récapitulatif
Public
Développeur, Chef de projet, Architecte logiciel
Prérequis
Connaitre 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é
Architecture Eclipse
- Architecture OSGi : bundles, fragments, fichier MANIFEST.MF
- Architecture Eclipse 4 : plugins, fragments, features, RCP
- Extensions et points d'extension, fichier plugin.xml
- Le PDE : outil de développement de plugins
Modèle d'application
- Contenu du modèle d'application : parts, commands…
- L'éditeur de modèle et le model spy
- Définition de la structure de l'IHM
- Les fragments d'application et les processors
Standard Widget Toolkit (SWT)
- Les widgets simples et les containers (Button, Text, Group, …)
- Les widgets évolués : Tree, Table, …
- Gestion des positions : les Layouts et LayoutData
- Gestion des ressources : Font, Color, Images.
- Gestion des événements : Events et Listeners
- Utilisation de Window Builder pour créer ses IHM
Librairie JFace
- Présentation de JFace
- Les viewers et le pattern MVC
- Input, ContentProvider et LabelProvider
- Registries : gestion des couleurs, fontes et images
- Widgets pour faciliter l'écriture des pages de préférences
Injection et annotations
- Description du mécanisme d'injection Eclipse 4
- Les annotations spécifiques de l'injection
- Les annotations complémentaires (préférence, event)
- Dynamique d'instanciation
Contextes d'injection
- Hierarchie des contextes d'injection
- Mettre à jour un contexte d'injection (Addons,…)
- Visualiser les contextes avec le context spy
Annotations de comportement
- Gestion des vues et des éditeurs
- Gestion des handlers de commande
Dialogues
- Gestion des préférences
- Gestion des property et des wizards
Services E4
- Le ModelService et la mise à jour du modèle
- Le PartService pour gérer l'IHM
- Le SelectionService et la gestion de la sélection
- L'EventBroker, la gestion des événements et l'event spy
- Les autres services
Api internes
- Le data binding, le drag and drop et le copier/coller
- Les Jobs et les UIJobs
- Les opérations et les commandes, gestion du undo/redo
- La gestion des ressources du workspace
Look and feel, CSS
- Modification du code pour gérer les CSS
- Ecriture de la CSS, syntaxe et éditeur
- Intégration de la CSS dans l'application
- Utilisation du CSS Spy