IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaFX Discussion :

Java FX vs WPF


Sujet :

JavaFX

  1. #1
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut Java FX vs WPF
    Bonsoir,

    depuis près d'un an je fais exclusivement du WPF pour le desktop que je trouve vraiment excellent et je me sent a l'aise avec de jour en jour .

    d'un autre côté j'avoue être tenté par JavaFx comme un complément/alternative

    d'après ce que j'ai pu comprendre il y'a quelques similitudes avec WPF :

    - Language XML pour l'UI (FXML <-> XAML)
    - Animation et effets de l'UI

    mais a part ça je ne sais pas ce que ça vaut ...
    les principaux reproches que je peux faire a WPF sont
    - ne marche pas sous WinXP dans la version 4.5 et ultérieure (si il y'a une version ultérieure )
    - le manque flagrant et navrant d'implication de la part de Microsoft envers son propre produit .


    donc l'idéal c'est d'avoir une comparaison objective et surtout a jour des 2 plateformes de développement

    Merci et bonne soirée a tous

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Malheureusement je ne connais pas assez WPF (j'en ai fait un peu pour créer une app très basique mais Microsoft était déjà entrain de le mettre de coté a l’époque) ou .NET (j'en fait un peu de temps a autres mais ça reste un usage basique pour moi).

    Pour ce que j'en vois d’après l'article Wikipedia, le principal intérêt serait la portabilité :
    • WPF n'est dispo que sur Windows (Mono n'a jamais implémenté WPF). Seul Silverlight est disponible aussi sur Mac OS et sur certains Linux. Mais outre le fait qu'on a besoin d'un navigateur, ici aussi Silverlight est mis de coté par rapport a HTML5.
    • JavaFX est disponible directement sur Windows, Mac OS X, Linux (x86* et ARM pour Rasberry Pi).


    *Attention cependant certaines distro ont une version trop ancienne de libgio pour lancer des app JavaFX.

    L'article de Wikipedia mentionne que le data binding support une architecture client-server ce que ne fait pas du tout JavaFX de base (il faudra aller voir du coté de bibliothèques tierces comme DataFX sans doute).

    Je ne comprends pas bien ce que font les templates coté WPF, je doute qu'un équivalent existe en JavaFX.

    Pour le cote imaging (manipulation d'images), tout peut être fait en Java via Java2D, Java Advanced Imaging ou encore n'importe quelle lib tierce qui travaille au format Java2D** : on convertira ensuite les images au format JavaFX). Il est aussi possible de manipuler les pixels directement au format JavaFXmais pour le moment c'est trop jeune et limité par rapport a Java2D (donc besoin de tout recoder).

    **Ce n'est pas possible sur ARM/Raspberry Pi cependant car on tourne sur le profil compact 3 du JDK qui ne contient pas AWT/Swing/Java2D mais bon, généralement ces plateformes ne sont pas suffisamment puissantes pour être utilisées pour de la manipulation d'images.

    Pour le cote média, l'article semble bien indiquer que, du au fait de l’intégration avec Windows, le support média est bien plus riche coté WPF. A ma connaissance la pile média JavaFX est encore très limitée et il n'est toujours pas possible d’insérer ses propres codecs pour ajouter le support de formats non-supportes de base.

    La 3D est disponible sur toutes les principales plateformes*** avec des primitives de base. Il faudra passer par des bibliothèques tierces pour importer des modèles fait avec les logiciels externes du marché.

    Les animations sont présentes mais pour le moment je ne connais pas d’éditeur graphique genre flash studio qui permettrait de définir facilement une animation en plaçant ses key frame dans un éditeur/ un storyboard, donc il faut passer par le code. Je n'ai pas regardé comment définir les animations en FXML : en théorie c'est faisable, le FXML ne sert pas qu'a définir des graphiques, mais en pratique SceneBuilder ne supporte rien de ce coté la pour le moment.

    Le support des documents est le même qu'ailleurs en Java : c'est a dire qu'on a les briques de base et qu'il faut tout coder ou utiliser des bibliothèques tierces. Un viewer PDF JavaFX existe déjà.
    Le contrôle WebView* permet d’intégrer le support de contenu HTML 5 + JavaScript (aussi bien embedded dans l'application que provenant d'un site distant).

    *** Pas dispo sur ARM/Raspberry Pi.

    Le touch est déjà supporté de base. Sur ARM/Raspberry Pi, les contrôles peuvent disposer de skins alternatifs plus proches de ce que l'on connait sur mobiles pour faciliter les actions au doigt. Un clavier virtuel est également disponible sur ces plateformes (il n'est normalement pas accessible, hors mode débogage spécial sur desktop).

    La mise en place de l'accessibilité est toujours en cours de réalisation avec, actuellement, pour cible le JDK8_u40 (soit vers mars 2015).
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  3. #3
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    Citation Envoyé par bouye Voir le message
    Je ne comprends pas bien ce que font les templates coté WPF, je doute qu'un équivalent existe en JavaFX.
    Ah c'est un point fondamental, d’après ce que j'ai pu lire (je ne sais pas si c'est vrai), les composants javafx sont des boites noires, pas moyen de les personnaliser, de les styler ..etc, ça m'a paru un peu bizzare mais bon .

    une des caractéristiques clé de WPF , c'est que les contrôle sont complètement personnalisables et stylables, par exemple on peux changer une listbox pour la rendre de forme circulaire, ajouter du easing pour faire une roue qui tourne ... etc, de ce côté c'est vraiment bien fait, d'ailleurs WPF ne propose de base que quelques composants, mais qui sont très souples et tres maniables, sans parler des datatemplates a la asp.net , donc je demande a voir ce que propose Javafx a ce niveau .

    - Pour l'animation et le design , il me semble qu'il y'a le (qui est l’équivalent de Blend ... mais en plus basique )

    - Aussi un point très important : Comment ça se passe niveau base de données/ intégration des ORM ... etc

    sinon je ne cherche pas vraiment du multiplateforme . mes clients sont sous Win XP/7 voire 8

    bref je suis curieux et intéressé .


    ps : ah oui ! le nouveau java 8 marche sous WinXP ?

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    La personnalisation des composants se fait via CSS pour ce qui concerne leur apparence. En fait il s'agit de personnaliser l'apparence, les couleurs et dans une certaine mesure les formes du skin de base d'un contrôle.

    Après il t'est également possible de changer la classe qui sert de skin au contrôle (en la spécifiant via un des sélecteurs CSS) ce qui permettrait, en théorie de faire ce que tu indiques (donner une forme circulaire à une liste ou carrément faire qu'une liste ait une apparence totalement différente d'une liste).

    Coté BD c'est comme ailleurs en Java standard : rien de plus que JDBC de base et tout le reste à base de composants et libs tierces (ici RedFX, DataFX)
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  5. #5
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 840
    Points : 22 854
    Points
    22 854
    Billets dans le blog
    51
    Par défaut
    Officiellement WinXP n'est plus supporté mais officieusement ça tourne et tant que ça tournera ça fonctionnera. Bref Oracle n'offre plus de support officiel pour XP mais pour le moment ça marche encore.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  6. #6
    Membre confirmé Avatar de Issam
    Inscrit en
    Mars 2002
    Messages
    578
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Mars 2002
    Messages : 578
    Points : 604
    Points
    604
    Par défaut
    ok ça me tente, pourquoi pas !

    je vais voir ce que je peux trouver sur le net comme tutorials, et réaliser une petite application base de données pour voir comment ça marche dans la vraie vie


    en tout les cas Merci d'avoir pris le temps de me répondre sur ça, j'apprécie vraiment .

Discussions similaires

  1. Futur de java face à Flex, WPF ou appolo
    Par jeffciara dans le forum Interfaces Graphiques en Java
    Réponses: 13
    Dernier message: 23/02/2007, 23h15
  2. le Java est la continuité du C++ ???
    Par Vincent PETIT dans le forum Débats sur le développement - Le Best Of
    Réponses: 33
    Dernier message: 25/08/2005, 20h17
  3. directx et java?? possible??
    Par jiraiya dans le forum DirectX
    Réponses: 3
    Dernier message: 09/07/2002, 19h55
  4. webcam : lire sur un port usb en c/c++ ou java. sous win. ?
    Par flo007 dans le forum Choisir un environnement de développement
    Réponses: 2
    Dernier message: 24/05/2002, 23h24
  5. Service de nommage java C++
    Par Anonymous dans le forum CORBA
    Réponses: 3
    Dernier message: 15/04/2002, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo