Formation JavaFX 8

publicité
Formation JavaFX 8
Développer une application de gestion avec JavaFX 8
Référence : JAVAFX8-03
Durée : 3 jour(s)
Présentation
Le développement de front-end est un domaine d'ingénieurie en constante mouvance. Il est parfois
difficile de savoir quelle technologie / framework correspond le mieux à notre besoin, c'est un milieu
fortement concurrenciel où l'obsolescence frappe durement les mauvais choix.
A l'heure où le développement Web se standardise sous l'impulsion de HTML5 et JavaScript, il est
important de souligner qu'il ne peut répondre seul à tous les besoins que l'on peut trouver dans les
applications de gestion entreprise; en particulier les besoins de type client lourd, de performances, de
maintenabilité et durabilité.
Java 8 vient tout juste de sortir et avec lui de nouvelles possibilités de développement d'IHM sont
disponibles : JavaFX 8 est la toute dernière technologie frontend livrée avec tout JRE et JDK d'Oracle
permettant de développer des front-ends très polyvalents, multi-supports et robustes.
JavaFX 8 est l'évolution directe de JavaFX 2, ce toolkit représente le remplaçant officiel de Swing,
Applet et AWT. Son cycle de développement est couplé à celui du JDK, JavaFX est conçu pour durer !
Apprenez dès maintenant à tirer profit de ce nouveau toolkit aux multiples facettes!
Objectifs
-
Créer des écrans de gestion avec JavaFX via API Java et/ou FXML
Maîtriser le développement orienté composant avec databinding
Choisir un découpage en mode MVC ou MVP en fonction de vos affinités et besoins
Intégrer JavaFX et Spring: une entrée facile dans le monde Java et ses nombreuses technologies
Evaluer les choix possibles d'intégration d'un front-end JavaFX à une architecture n-tiers
Répartition: 50% Théorie, 50% Pratique
Public:
Architecte, Développeur, Chef de projet
Pré-requis: Connaissance de Java
Programme
Présentation de JavaFX
- Le successeur de Swing
- Solution pour client lourd et client riche déployable
sur le Web ou par installeur
- Un runtime puissant tirant profit du hardware actuel
- Conçu pour être multi-plateforme
- Description des différentes solutions de déploiements:
JAR exécutable, WebStart, natif
Edition d'écran
- Présentation des composants de base
- Les différents layouts de composants
- Le langage déclaratif FXML
- Le support CSS
- L'outil WYSIWYG SceneBuilder
- Rapide aperçu des autres langages disponibles:
VISAGE, ScalaFX, ClojureFX, GroovyFX
- Intégration avec SceneBuilder
- Limitations
Architecture
-
Découpage en Model View Controller
Découpage en Model View Presenter
Null Object pattern et databinding
Exemple d'intégration à une architecture n-tiers
Présentation de Granite Data Services
Outillage
-
Intégration usine logicielle avec Maven JavaFX plugin
Définir une bonne testabilité d'une IHM
Réaliser des tests avec JemmyFX, MarvinFX ou TestFX ?
Imprimer des vues JavaFX
Support dans les IDE: NetBeans, E(fx)clipse et Intellij
Graphisme
Multi-support avec JavaFX
-
- JavaFX 8 sous Java SE Embedded 8 et limitations
- Présentation de JavaFX Ports le projet de portage JavaFX
sous Android
- Présentation de l'intégration JavaFX avec RoboVM sous iOS
Gestion de TimeLine et animations
Introduction aux API 3D fournies
Créer des effets personnalisés paramètrables par CSS
Présentation de l'API Canvas
Databinding
- Description du système de binding via Property
- Déclaration de binding en FXML
- Ecouter des changements à partir d'une Property
- Implémentation de bindings personnalisés
- Utilisation de la librairie JFXtras avec l'API
BeanPathAdapter
Concurrence
- Description du fonctionnement des threads JavaFX
- Utilisation de l'API Task et de l'API Service
- Paramètrage d'un ThreadPoolExecutor
Interfaçage avec Swing
- Intégrer JavaFX dans une application Swing avec
JFXPanel
- Intégrer un composant Swing dans une application
JavaFX via SwingNode
- Gestion des threads Swing et JavaFX : séparés ou
mergés
- Limitations
Intégration avec Spring
- Injection de contrôleurs et composants
- Utilisation de Spring Events
- Traitement des tâches asynchrones
Tel: +33(0)1 45 26 19 15
Fax : +33(0)1 75 43 49 92
Email : [email protected]
Téléchargement