Projet MVC-CD Analyse des outils JavaFX



Documents pareils
Générer du code à partir d une description de haut niveau

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

Bases Java - Eclipse / Netbeans

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Projet de développement

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

TP1. Outils Java Eléments de correction

S T L - C P S - L e s p l u g i n s E c l i p s e. - Une Introduction , Frédéric Peschanski

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Approche Contract First

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

Environnements de développement (intégrés)

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Celui qui vous parle. Yann Vigara

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

I. Instalation de l environnement JDK et JRE : II. Configuration outil Reporting : Pentaho... 4

CQP Développeur Nouvelles Technologies (DNT)

Formation : WEbMaster

Installation Eclipse Galileo. Groupe Entreprenant et Innovateur. France. Tutoriel. Programmation Mobile. Cours. Arón HERRERA PONTE. Coach.

PROSOP : un système de gestion de bases de données prosopographiques

Point sur les solutions de développement d apps pour les périphériques mobiles

Tutoriel d installation de Hibernate avec Eclipse

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits

Installation et prise en main

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Traitement de données

Module d anonymisation

JOnAS Day 5.1. Outils de développements

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

Compte Rendu d intégration d application

Projets Tutorés. Lucas Nussbaum. Licence professionnelle ASRALL

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Java au cœur de la base de données Oracle

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É PHP - MAGENT O. 30 ans - 6 ans d'expérience

TD/TP 1 Introduction au SDK d Android

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

La base de données XML exist. A. Belaïd

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

ECLIPSE ET PDT (Php development tools)

TP1 : Initiation à Java et Eclipse

Eclipse atelier Java

CONNEXION. Une interface de connexion sécurisée, simple et accessible même depuis un appareil mobile. CONNEXION /

FORMATION TALEND. Page 1 sur 9

Formation : Langues : Types d Intervention et Secteurs d Activité :

Nouveautés joomla 3 1/14

Développement des Systèmes d Information

Canvas 3D et WebGL. Louis Giraud et Laetitia Montagny. 9 Avril Université Lyon 1

BIRT (Business Intelligence and Reporting Tools)

Guide Utilisateur Easy Share

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

Java pour le Web. Cours Java - F. Michel

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Burckel Thomas. Formation. Compétences

Guide des Développeurs SITools2 V3

THÉMATIQUES. Comprendre les frameworks productifs. Découvrir leurs usages. Synthèse

Rapport de Synthèse. Création d un Générateur de modèle PADL pour le langage C++ Sébastien Colladon

Gestion des utilisateurs dans un environnement hétérogène

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

CONFIGURATION DE LA LIBRAIRIE WEBUTIL (10g) Oracle Forms 10g

Hudson Serveur d Intégration Continue. Adrien Lecharpentier IR3 Ingénieurs2000, Université de Marne la Vallée

M2 SIAW - Exemples de stages réalisés. Gabriella Salzano - Document de travail - 28/1/2015

M221 Planification de projet TP n 1 DUT QLIO Semestre 2

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Nell Armonia Shuttle Web

Diffuser un contenu sur Internet : notions de base... 13

Utilisation de Jakarta Tomcat

Java c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/ Vue générale 2 - Mon premier programme 3 - Types de Programme Java

Découvrir le CMS. et l utiliser dans une approche pro!

Chapitre I Notions de base et outils de travail

Architecture Orientée Service, JSON et API REST

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Devenez un véritable développeur web en 3 mois!

VOLÉE Master of Advanced Studies RAPID APPLICATION DEVELOPMENT.

1/15. Jean Bernard CRAMPES Daniel VIELLE

WordPress : principes et fonctionnement

Introduction à Eclipse

Extensions, Documentation, Tutoriels, Astuces

Initiation à JAVA et à la programmation objet.

Applications orientées données

Olivier Deheurles Ingénieur conception et développement.net

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Cyrille GUERIN 823, place Soulanges Brossard, J4X1L8

Xavier Costa. «Write once, run anywhere»

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

DotNet. Plan. Les outils de développement

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

L archivage pérenne du document numérique au CINES. CINES (O.Rouchon) JRES Novembre 2007

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

«Consultant en système d'information et cloud computing»

Notice d installation du patch Lia 8.20

Notes de cours : bases de données distribuées et repliquées

Cahier des charges : gestion de projets agiles. Programmation d Algorithmes Distribués (PAD)

Alfresco et TYPO3 Présenté par Yannick Pavard dans le cadre des rencontres WebEducation Février 2008

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

BES WEBDEVELOPER ACTIVITÉ RÔLE

Transcription:

Projet MVC-CD Analyse des outils JavaFX Créé par M. Jaouadi, le 23 mars 205 Modifié par M. Jaouadi, le 3 mars 205 Page sur 2

Table des matières Préambule... 3 2 Les outils associés à JavaFX... 3 3 Les avantages de cette solution... 5 4 Tests techniques effectués :... 8 4. er test... 8 4.2 2ème test... 8 4.3 Conclusion :... 9 5 Installation :... 2 5. Environnement Technique :... 2 5.2 Configuration d un projet:... 2 6 Bibliographe... 2 Page 2 sur 2

Préambule Ce document sert à étudier l utilisabilité du plugin e(fx)clipse dans la réalisation de nos interfaces utilisateurs. Ces interfaces seront écrites en JavaFX et permettent de gérer les préférences de transformation. 2 Les outils associés à JavaFX Scene-Builder C est l outil de création des interfaces JavaFX, initialement créé par Oracle, permet à travers la méthode drag and drop des composants graphiques, de faciliter la création des interfaces. Figure Interface de Scene Builder Page 3 sur 2

e(fx) clipse C est le seul plugin de l outillage JavaFX pour Eclipse IDE. Les travaux dans ce projet open source ont commencé depuis l été 20. Cette intégration en plus de la liaison entre Eclipse IDE et l outil Scene Builder résident dans la documentation officielle d Oracle [Oracle-0]. Figure 2 recommandation du plugin dans Oracle Par ailleurs, après avoir effectué des recherches, j ai pu dresser un premier constat : La communauté e(fx)clipse est active, elle a un grand nombre d interactions dans le forum «Eclipse Community Forums». Durant le mois de Mars 205, il y a eu une ouverture de 23 sujets dont seulement trois ont resté sans réponse tous les autres ont été bien traités par la communauté [Eclipse-0]. J ai également accéder aux fichiers du projet sur GitHub le nombre total des commits sur le site est 2,505 commits [GitHub-0]. Les releases sont livrés toutes les 6-8 semaines. GitHub est un service web d'hébergement et de gestion collaborative de développement de logiciels basé sur le logiciel de gestion de versions Git. Page 4 sur 2

Figure 3 Le répertoire sur GitHub 3 Les avantages de cette solution Ce que peut e(fx)clipse fournir pour nos interfaces : - Prise en charge facile du CSS : Permet de fournir un éditeur qui facilite l écriture du CSS. - Interfaces conviviales : Faciliter le développement des interfaces à travers Scene Builder. Le plugin e(fx)clipse fait le lien entre Scene Builder et Eclipse. Page 5 sur 2

- Après génération des fichiers FXML 2 dans Scene Builder, e(fx)clipse fournit une vision sur la documentation des éléments graphiques créés : - Il offre aussi un outillage de définition de graphe d objet intitulé : FXGraph qui rassemble à JavaScript Object Notation (JSON) qui permet de définir des objets JavaFX 2.x 2 FXML est un fichier pour définir les interfaces utilisateurs, ayant la syntaxe de XML mais qui n ont pas de DTD ou XSD (XML Schema) Page 6 sur 2

Schéma récapitulatif : Ecriture du code java : - Développer des contrôleurs - Développer le logique métier (models) Se sert Scene Builder Proposer une alternative à Netbeans :. Faire le lien entre Eclipse et Scene Builder. Générer : Se sert 2. Offrir des outils basés sur JavaFX o FXML o CSS o DSL o JDT Ce code FXML contient tous les nœuds (Composants graphiques) ajoutés. C est au niveau de ces composants qu il faut ajouter les Listerners. Conclusion En ce qui a trait à la valeur ajoutée à notre développement, le plugin garantit une meilleure prise en charge des CSS à travers des assistants spécialisés et des éditeurs XML. Pour obtenir une rétroaction immédiate il intègre un aperçu de l interface. De plus, il offre un prototypage rapide sur l outil SceneBuilder, qui permet de générer les fichiers FXML utilisé pour décrire les interfaces en mode déclaratif. Page 7 sur 2

4 Tests techniques effectués : Afin d étudier la manière avec laquelle nous allons intégrer le plugin e(fx)clipse et pour mesurer l éventuelle dépendance que va engendrer cette intégration dans notre développement, j ai décidé d effectuer des tests en éliminant à chaque étape un facteur de dépendance. 4. er test D abord il est pertinent de signaler que la dernière version du plugin e(fx)clipse est essentiellement destinée à la version Java 8. Donc notre environnement de développement Eclipse Juno (Java7) n est plus compatible. Pour ce faire, nous allons commencer le test d abord sur la dernière version d Eclipse Luna. Objectif : S assurer que le plugin destiné à la version JRE 8 peut fonctionner normalement en utilisant le JRE7. Manipulation à faire : - Créer un projet JavaFX nommé «TestAvecPlugin» en utilisant le JRE7. - Créer une interface avec Scene Builder. - Installer un autre Eclipse IDE Luna sans plugin. - Importer le projet «TestAvecPlugin» et le renommer «TestSansPlugin» (figure5) Résultat : L application tourne sans échecs. Figure 4 Structure du projet sur Eclipse Luna sans e(fx)clipse 4.2 2ème test Objectif : S assurer que le projet développé en intégrant le plugin e(fx)clipse peut tourner dans notre environnement de développement Eclipse Juno, sans plugin. Manipulation à faire : 2 - Importer le projet sur Eclipse Juno et le nommer «TestSansPlugin» - Changer l extension du fichier FXML par XML. Page 8 sur 2

Eclipse Luna Eclipse Juno 2 2 Résultat : L application tourne correctement sans avoir besoin d intégrer le plugin ou faire la liaison sur Scene Builder. 4.3 Conclusion : L utilisation du plugin e(fx)clipse ne rend pas le développement dépendant de son existence dans le projet. Nous pouvons s en passer de cet outil si la communauté décide d arrêter le projet. Du coup, pour réaliser les interfaces graphiques nous avons trois solutions à proposer : La première : C est de favoriser le développement classique en décrivant les interfaces en mode procédural (code Java). Page 9 sur 2

Figure 5 développement procédural La deuxième : C est de développer les interfaces en utilisant le plugin e(fx)clipse et exploiter toutes les options offertes par JavaFX, ceci exige de changer la version d Eclipse parce que le plugin ne supporte plus le Juno release. 2 3 Page 0 sur 2

La troisième : C est de développer les interfaces dans Scene Builder, générer le FXML puis les mettre dans un fichier XML et l injecter dans le projet MVC-CD. Figure 6 Développer dans Scene Builder 2 Figure 7 générer le FXML 3 Figure 8 mettre le fichier MyView dans sa nouvelle forme XML Page sur 2

5 Installation : 5. Environnement Technique : Dernière version JDK qui supporte le JavaFX http://www.oracle.com/technetwork/java/javase/downloads/jdk7u9-downloads- 859576.html Eclipse 4.x http://www.eclipse.org/downloads/ JavaFX Scene Builder http://www.oracle.com/technetwork/java/javafx/downloads/devpreview-429449.html e(fx)clipse plug-in d Eclipse 4.x 5.2 Configuration d un projet: Il faut apporter ces JARs dans le Classpath de notre projet : JRE.7 Bootclasspath rt.jar Javafxrt.jar 6 Bibliographe [Oracle-0] [Eclipse-0] [GitHub-0] Documentation Oracle sur JavaFX Scene Builder https://docs.oracle.com/javafx/scenebuilder//use_java_ides/sb-with-eclipse.htm Eclipse Community Forums https://eclipse.org/forums/index.php/f/259/ Répertoire du projet e(fx)clipse sur GitHub https://github.com/tomsontom/e-fx-clipse Page 2 sur 2