Objectifs pédagogiques
- Structurer vos pages avec les composants GWT
- Décrire l'architecture cliente et serveur d'une application GWT
- Mettre en oeuvre une communication Client / Serveur avec GWT
- Agir sur l'apparence des composants
- Appliquer le fonctionnement interne de GWT et de son compilateur
- Communiquer entre le code Java et le code JavaScript
- Structurer son application avec le MVP.
Modalités et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour les cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatique...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Niveau requis
Avoir une expérience en développement Java et en développement Web.
Public concerné
Architectes, développeurs et chefs de projets.
Programme
Jour 1
Introduction
- Originalité
- Historique
- Présentation de la plateforme
- Positionnement et concurrents
- Navigateurs supportés
Un projet GWT
- Structure d'un projet GWT
- GWT Designer
- Le débug
- Séparation des sources Client / Serveur
- Les modules GWT
- La configuration gwt.xml
- Optimisation du code produit
- Déploiement avec et sans AppEngine
Exemples de travaux pratiques (à titre indicatif)
- Conception d'une application comme premier projet utilisant GWT
- Test de cette application
Jour 2
Les composants graphiques de GWT
- Les composants graphiques de base (boutons, zones de saisie...)
- Les différents layouts et panel
- Création en pur Java
- Création en XML avec UiBinder
- Types de structuration HTML générée
- CSS et mise en forme
- Modification du DOM
- Les liens évènements / Composants
Exemple de travaux pratiques (à titre indicatif)
- Conception de plusieurs interfaces graphiques
JavaScript Native Interface - JSNI
- Appel JavaScript vers Java
- Appel Java vers JavaScript
- JSON
- Types Overlays
- Gestion des exceptions
Exemple de travaux pratiques (à titre indicatif)
- Ajout au projet d'échanges entre l'interface graphique et le serveur Java
Jour 3
Communication Client / Serveur
- GWT-RPC
- Interface et implémentation
- Sérialisation et exceptions
- RequestFactory
- RestFul Services
Exemples de travaux pratiques (à titre indicatif)
- Intégration d'appels RPC entre le client GWT et le serveur en utilisant REST en asynchrone
- Gestion des exceptions
Bonnes pratiques
- Pattern Model View Presenter
- Détail d'une architecture MVP
- Utilité du Differed Binding
- Validation
- Internationalisation
- Performances
- Chargement asynchrone
- Sécurité avec GWT
- Protection anti-XSS
Exemple de travaux pratiques (à titre indicatif)
- Etude appliquée des bonnes pratiques vues en cours
L'écosystème GWT
- Le test unitaire simplifié : HtmlUnit
- ExtGWT
- SmartGWT
- Le système des widgets
- Personnalisation de widgets
- Intégration avec d'autres frameworks Java
- Support des API HTML 5
Exemples de travaux pratiques (à titre indicatif)
- Utilisation du test unitaire avec HtmlUnit
- Manipulation de SmartGWT
- Vue de l'intégration avec d'autres frameworks Java
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation