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

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Débat : Que choisir entre Java FX ou Android ?

Le , par yphilogene

46PARTAGES

1  0 
J'ai l'impression qu'on parle beaucoup plus d'Android que de JavaFX sur Internet et j'avoue que j'en suis un peu déçu.

Qu'est-ce qu'Android si ce n'est une pile complète bâtie sur un noyau Linux avec Java en surface (je schématise) et pourquoi génère-t-il un tel buzz alors que JavaFX ne semble pas exciter grand monde?

L'OS de Google a bousculé le monde du mobile sur l'aspect logiciel autant que l'Iphone l'a fait sur le plan matériel. L'enrichissement progressif et automatique des applications en ligne de Google jouent parfaitement leur rôle de petites piqures contre l'ennui. Je suis d'avis que finalement, Google surfe bien sur la vague des smartphones de nouvelle génération et du cloud-computing émergent. Tant mieux pour eux. Mais Google apporte réellement quelque chose au travers de ses services de recherche et de navigation, son OS n'est rien d'autre qu'une étoile de plus dans la constellation existante des OS pour configuration ciblée.

Ce serait vraiment dommage qu'Android, aussi excitant soit-il, fasse de l'ombre à JavaFX dans le monde mobile (smartphones, MDI et netbooks).

Franchement, lorsqu'un de ces 3 types d'équipement sortira muni d'un OS Linux minimaliste + la pile JavaFX, j'achèterai les yeux fermés.

En tant que développeur, l'idée de pouvoir créer mes propres applications et de pouvoir les utiliser dans la vie de tous les jours sur un smartphone JavaFX, un MDI JavaFX, un netbook JavaFX et... n'importe quel autre notebook, station de travail, télé moderne ou encore sous forme d'applet me rend complètement dingue.

Le concept du "Write once, run anywhere" existe depuis la naissance de Java. C'est peut-être pour ça que JavaFX apparait peu innovant. Mais pourtant, il suffit de se remettre au travail ( on dirait une parole de notre cher Président).

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de guitariste
Membre régulier https://www.developpez.com
Le 31/03/2009 à 17:39
Salut tout le monde.

Je ne suis pas un expert du domaine, mais si on veut avoir une application de bureau avec une riche présentation graphique et avec des effets visuels à la flash, javaFX me parait la solution pour le moment, Vu que c'est compatible avec java et que c'est facile à programmer.

Mais je me trompe peut être !
1  0 
Avatar de bouye
Rédacteur/Modérateur https://www.developpez.com
Le 20/02/2009 à 22:21
C'est difficile à dire, je ne connais pas Android et je n'ai jamais dévellopé pour mobile.

Mon point de vue (qui n'est pas du tout orienté mobile ou serveur) est que JavaFX a été mal positionné dès son lancement : la version 1.0 ciblait le web et essayait de concurrencer Flash qui monopolise plus de 90% des parts de marché, et ce n'est que la version 1.1 qui vient juste de sortir qui rajoute enfin le support mobile. Donc il faut encore que les gens aient le temps de s'y mettre.

Pendant ce temps la partie desktop est mal intégrée ou délaissée, si on a bien le support Swing dans JavaFX, le support du JavaFX dans Swing est quant à lui inexistant ; je l'ai répété en interne : si ce support-là avait été intégré dans la version de base, alors immédiatement on aurait vu des applications Swing avec du JavaFX apparaitre sur le marché tellement il est facile de faire en JavaFX des chose qui semble insurmontables quand on début en Swing (skinner des composants par exemple, faire des effets graphiques chiadés, etc..).

Sinon coté mobile ben, encore faut-il avoir des JVM qui le supporte et il serait bon que Sun (puisqu'Apple a décidé de ne pas le faire) se magne un peu pour fournir une JVM pour l'iPhone et l'iPod Touch. Là oui je serai alors peut-être interressé pour develloper des trucs dessus. En tout cas j'ai toujours trouvé le devellopement Java sur mon vieux P990i trop contraignant pour être interressant.

Après, on a toujours pas de support officiel de Linux ce qui à mon sens ne vas pas trop gener pour le devellopement mais va juste marquer le langue comme étant non-logiciel libre-friendly, ce qui peut ternir son image de marque auprès des acharnés du libre pendant quelques années.

Egalement au niveau IDE, le seul support officiel est pour le moment dans NetBeans ce qui met la communauté Eclipse à part en attendant que le plugin devienne dispo pour eux. La qualité du plugin NetBeans est elle-même plutôt bancale, ca plante souvent, impossible de faire un developpement complètement graphique comme le permettent les éditeur Flash (ce qui rebutera les dévellopeurs ou designers Flash potentiels qui voulaient essayer autre chose), dégogger du Java depuis JavaFX déc#~{#~(donc nécessité de produire un jeu de tests Java en complément de ceux en JavaFX), etc...

Niveau API c'est sympa pour démarrer, on peut faire quelques trucs graphiques, un peu de vidéo, un peu de son mais dès qu'on voudra faire des choses plus avancées il faudra taper dans l'API Java ou ses extensions ce qui forcera les gens à apprendre un second language (pour ceux qui commencent directement en JavaFX). On retombera également sur les limitations de Java lui-même et surtout de ses extensions (vieux bugs et défauts de Java2D pas corrigés depuis plus de 10 ans, JMF mort-né, personne ne connait l'existence du JAI -ni comment s'en servir-, etc...).

De plus franchement, au vu des capacité et du buzz généré, avec toutes ces méthodes asynchrones qui ne génèrent jamais d'erreur, ca ressemble énormément à ce qui s'était passé lors de la sortie de Java 1.0, de son API limitée et de la présentation des premières Applets dans Netscape à l'époque. C'est '95~96 all over again ! donc à voir si ca évolue pareil (finalement Java a bien plus réussit coté serveur que coté desktop et web).

Pour résumé :

- sorti trop tôt, la version 1.0 fait plutot penser à une beta-devellopeur-release par certains cotés. La version 1.1 rajoute très peu de choses au niveau API (d'autres changements comme l'extension des types supportés sont eux très très bienvenus).

- peu d'outils de devel et aucun orienté designer. Il faut se reposer sur des outils externes souvent très chers (Illustrator et Photoshop).

- documentation, tutoriels, exemples et règles de bons usages encore légers ou inexistants sur bien des points.

- mauvais ciblage (à mon sens).

- intégration bancale dans la JVM ou le JRE, déploiment bancal, les quelques exemples fournis ne fonctionnent pas toujours suivant les installations et/ou les navigateurs (voir topics dans ce forum).

Pour conclure :

- wait for version 1.5 or better version 2.0.
0  0 
Avatar de yphilogene
Membre actif https://www.developpez.com
Le 21/02/2009 à 0:43
Le danger est que justement, sans le support de la communauté Java, JavaFX risque de mourir avant d'atteindre la version 1.5...

C'est vrai qu'à l'origine (bon après, va savoir ce qui se trame réellement au sein de Sun) JavaFX était présenté comme la réponse de Sun à Flash, mais plus généralement à AIR. Mais franchement, j'ai toujours un gros doute quant à l'intérêt réel des RIA face aux applications Web développé en AJAX. C'est pourquoi, je me suis vite désintéressé de AIR et autre Silverlight avant d'être séduit à nouveau... par JavaFX, me rendant compte que Sun avait déjà une avance considérable dans sa vision avec Java Web Start.

Sur le point de l'intégration de JavaFX dans Swing, je suis perplexe quant à ce besoin. A quoi ça sert? Pour moi, JavaFX est une surcouche par rapport à Swing et pas l'inverse. Je vois ça comme une résistance des développeurs Swing (dont je fais parti) à apprendre un nouveau langage. Ce serait dommage qu'une guerre interne Swing vs JavaFX naisse. A mon sens, JavaFX apporte des possibilités de création plus riche que Swing et remplit ainsi parfaitement son rôle en permettant à Java Web Start de concurrencer les autres plateformes RIA.

Côté mobile, c'est en effet une question de temps pour voir apparaître les premiers "JavaFX phones". Je pense qu'il est dans l'intérêt des géants de l'électronique comme Sony, qui proposent des gammes de produits couvrant tous les types d'écrans, de développer leurs systèmes en s'appuyant sur JavaFX, afin de factoriser le développement de leurs applications. C'est bien là tout l'intérêt de JavaFX par rapport à la concurrence.

Personnellement, je me fiche pas mal de ce qu'Apple peut bien décider de son côté pour son sacro saint Iphone (apparement, ils ont déjà copinés avec Adobe pour la prise en charge de Flash). Je ne suis pas anti Mac, mais il existe aujourd'hui des produits qui tiennent tout à fait la comparaison. Le problème est que chacun y va de son OS propriétaire. Sur ce point, Web OS de Palm tire son épingle du jeu dans la mesure où il utilise AJAX et n'introduit pas une courbe d'apprentissage supplémentaire à gravir par les développeurs. Mais là encore, je ne m'attends pas à avoir suffisament de souplesse avec AJAX pour développer des applications paramétrées de façon à tourner sur plusieurs écrans différents. C'est ce qui pourrait justifier l'effort d'apprentissage de JavaFX.

Il reste à espérer que le prochain mobile JavaFX de Sony Ericsson te convaincra de lâcher ton cher P990i .

Concernant JavaFX sur Linux, j'avoue que moi aussi j'ai été surpris . Même si je développe sous Windows, je trouve ça stratégiquement bizarre de la part de Sun, qui a pourtant rendu Java Open Source depuis un certain temps maintenant. C'est clair que perdre les mordus de Linux empêche la plateforme de prendre un démarrage canon.

Enfin... j'espère que JavaFX va convaincre une majorité. En tout cas, moi, je vais m'y mettre. Après un tour d'horizon de la concurrence, et en particulier d'Android, la vision de Sun reste la seule qui me motive à me lancer.
0  0 
Avatar de bouye
Rédacteur/Modérateur https://www.developpez.com
Le 21/02/2009 à 1:17
Non j'ai laché Sony Ericson depuis des lustes, tant leur support develloppeur qu'utilisateur pour le P990i m'a définitivement fait comprendre qu'il se foutaient de nous (encore plus quand le P1 est sorti).

Pour ce que j'en ai vu sur le net, le support de Flash pour l'IPhone/IPod Touch est encore moins au gout du jour que l'intégration de Java : Apple a dit NIET ! Aucune des deux technologies ne fonctionne sur ces appareils pour le moment. Safari affiche l'icone du plugin non-installé sur les pages flash (et on ne peut rien installer), les pages Java renvoient chez Sun qui indiquent qu'il faut contacter Apple pour installer une version de la JVM pour MacOS.
C'est Quicktime et l'Iphone SDK ou rien.

Bien au contraire l'intégration de JavaFX dans Swing serait un must pour n'importe quel devellopeur qui aurait a créer des composants personalisés et customisés (surtout si un éditeur graphique correct voit le jour). Un petit exemple qui ne fonctionne plus dans la version finale : http://stufffromjim.blogspot.com/200...lications.html
0  0 
Avatar de bouye
Rédacteur/Modérateur https://www.developpez.com
Le 24/02/2009 à 1:02
Un petit commentaire sur le blog de Joshua Marinacci qui date deja du debut du mois -There is no JavaFX Mobile. There is only JavaFX.- ou il indique qu'il ne fait guere la distinction entre la version desktop de JavaFX et la version mobile (ce qui est une bonne chose -pas envie de me lancer dans JavaME ) et egalement donne une piste pour ceux qui devellopent sur Mac (qui ne dispose pas de l'emulateur mobile).
0  0 
Avatar de yphilogene
Membre actif https://www.developpez.com
Le 26/02/2009 à 1:20
En parlant de Joshua Marinacci, voici une vidéo d'une de ses présentations intitulée "The future of Java Platform": http://www.viddler.com/explore/oredev/videos/24/

J'ai trouvé cette présentation particulièrement instructive; elle explique certains choix de Sun, comme par exemple l'absence d'outil de design visuel d'interface.

On entend aussi la prise de recul évidente de Joshua Marinacci: de Rich Internet Application, on passe à Internet Application pour finir par Application. Alors que le langage Java permet depuis toujours de développer des applications, le langage JavaFX script a pour unique objectif de simplifier la création des interfaces graphiques "expressives" comme l'équipe marketing de Sun aime si bien le dire. Autrement dit, des interfaces non pas composées de menus et boutons, mais plus généralement de dessins, d'animations, bref tout ce qu'on voit déjà avec Flash, etc...

L'introduction rappelle également que "Java" désigne à la fois un langage de programmation et une machine virtuelle (hmmm... je capte pas trop la différence entre Runtime et Virtual Machine). De la même façon, "JavaFX", c'est le langage JavaFX script et la machine virtuelle capable de faire tourner les applications JavaFX.

Bref, JavaFX, c'est désormais Java accompagné de JavaFX script. Tout ce blabla pour ça .
0  0 
Avatar de bouye
Rédacteur/Modérateur https://www.developpez.com
Le 26/02/2009 à 4:06
Citation Envoyé par yphilogene Voir le message

J'ai trouvé cette présentation particulièrement instructive; elle explique certains choix de Sun, comme par exemple l'absence d'outil de design visuel d'interface.

[...] Autrement dit, des interfaces non pas composées de menus et boutons, mais plus généralement de dessins, d'animations, bref tout ce qu'on voit déjà avec Flash, etc...
Ce qui est completement contradictoire en soit...

Mais bon apres tout, ils ne veulent pas perdre la face en avouant qu'ils n'ont pas les moyens humains ou financiers d'investir dans le devellopement de vrais outils pour designers et qu'il preferent que quelqu'un d'autre dans la communaute en ponde un pour eux*...

Pendant ce temps-la puisqu'il se reposent sur Illustrator et Photoshop, ils ne font qu'engraisser encore plus Adobe qui aura alors d'autant plus de fonds a injecter dans le devellopement et le support de Flash et de ses outils. C'est bien sur d'une logique imparable ...

A part ca, c'est toujours pareil et le meme discours qui revient depuis le debut de Java*... Bah l'exitation des grandes annonces orientees Swing des JavaOne de 2005 et 2006 s'est bien vite estompee... comme d'hab.

*Faudra que je pense a m'auto-quoter dans 4~5 ans si on est toujours au meme niveau et que rien n'a decolle... apres tout ce n'est que la 3eme periode de Java(FX)-blues que je vis en 10 ans que je pratique... *thanks a lot Sun*

EDIT - je trouve quand meme marrant de le voir s'exciter sur la javaFXdoc sachant que c'est l'une des choses les plus penibles qu'il m'est ete donne d'utiliser (ca me rappelle la javadoc 1.0, c'est dire...).
0  0 
Avatar de yphilogene
Membre actif https://www.developpez.com
Le 26/02/2009 à 20:34
T'as l'air bien désabusé

Bon, sincèrement, je ne sais pas à quoi ressemble les outils de design des applications Flash... alors ok, peut-être qu'un designer tout seul s'en sortira mieux avec Flash qu'avec JavaFX...

En équipe de développement, la donne est sûrement différente.

Sur la JavaDoc, eh ben... je trouve ça plutôt pas mal. Tu connais un équivalent pour les autres langages?

Je n'essaie pas d'ériger JavaFX en tant que plateforme de développement d'applications ultime... euh, si en fait .
0  0 
Avatar de galien
Membre averti https://www.developpez.com
Le 27/02/2009 à 2:59
Je comprends pas trop l'allali sur Sun et javaFX.
Il faut pas oublier que c gratis et bientôt opensource, aucune comparaison avec flash qui est juste un afficheur presque limité au navigateur.
De plus le back end java fait tout, donc on a une plateforme cohérente (java), fiable, qui vas de l'affichage vectoriel jusqu'a JNI pour le matos.
Si il y a une grosse critique à faire avec javaFX c'est plutot du coté du threading qui est pas super documenté, on reste quand meme sur L'EDT de java.
Vouloir utilisé du code javaFX dans swing... je vois pas trop l'intérêt et il suffit d'utiliser la class SwingComponent et la methode wrap() pour l'integration de swing dans javaFX.
De plus je me suis laisser par faire des ptits logos simple sous javaFX, bien plus simple qu'avec GIMP, euh je parle pas de photoshop ou il faut se taper 2h de tutoriaux pour faire un effet de skew... 10 min montre en main avec FX.
De plus quand à la critique sur netbeans, développer en C/C++, ruby, java, ... et ceci relativement simplement, et gratuitement.
0  0 
Avatar de guitariste
Membre régulier https://www.developpez.com
Le 26/03/2009 à 11:19
salut.

je viens de découvrir javafx et il me parait intéressant !
mais j'arrive pas a comprendre la comparaison que vous fêtes : Android est un OS , javafx est langage de script non ?
je crois qu'il y a la machine virtuelle java sur Android, on peut pas faire fonctionner javafx sur ce dernier ?
et finalement j'arrive pas a situer javafx par rapport J2ME !

Merci
0  0