10
votes

Javafx vs swt? (Avantages et inconvénients)

Je suis confus et je ne sais pas lequel choisir: SWT / JFACE ou JAVAFX. Quel est le meilleur? Je sais que SWT est natif, mais Javafx natif ou pas? Est-il important d'utiliser une interface utilisateur natif ou est-ce que Javafx est le meilleur choix?


1 commentaires

Je serais vraiment intéressé par la réponse à la même question à partir de décembre 2013, qu'avec JavaFx 8 étant donné beaucoup de presse.


3 Réponses :


3
votes

oracle a indiqué que JavaFX 2.0 est le remplacement de Balançoire. J'irais avec JavaFX pour un nouveau client GUI pour Windows.


3 commentaires

Je ne reviendrons pas nécessairement cela, mais vous ne devriez pas aller avec une technologie simplement parce que Oracle le dit.


Townvote juste parce que l'OP n'écrit pas sur Swing, mais SWT à la place, et c'est la réponse la plus votée.


Swing vivra dans une catégorie des applications de Cobol similaires en direct. Les systèmes d'interface graphique complexes ne sont pas faciles à porter pour JavaFx et les personnes (moi, y compris) continueront d'utiliser Swing. Bien sûr, pour de nouveaux projets, JavaFx est recommandé, mais JavaFX peut ne pas être le meilleur choix si tout le reste se balance ...



5
votes

Ce choix dépend vraiment de tant d'autres choses que la boîte à outils d'interface utilisateur elle-même. Après tout, vous pouvez mettre en œuvre presque la même apparence avec toutes les outils à outils de l'interface utilisateur établis - les API pourraient être très, très différentes - mais les résultats ne sont pas ...

Ce sont les environnements qui entourent les boîtes à outils importantes.

Tout d'abord, la principale différence entre SWT / Jface d'un côté et swing ou JavaFX de l'autre côté, est la présence du cadre d'application Eclipse avec le Workbench et les services associés. Et de cause Osgi ... Pour moi, cela a fait une grande différence. Swing et JavaFX ont quelque chose de similaire dans le cadre Java, mais pas aussi développé. À mon avis.


4 commentaires

"Les résultats ne sont pas" Je ne suis pas d'accord fortement. Le look natif et se sent sont très différents que de vrais contrôles natifs (le meilleur exemple dans mon esprit est la boîte de dialogue de fichiers que chaque offre)


Maintenant, quelques jours, je dirais qu'il y a très peu de différences. Même la boîte de dialogue de fichier est la même dans Swing et JavaFx - Afaik ...


Je suis définitivement un fanboy natif. Je sais juste que pendant un certain temps, la boîte de dialogue de fichiers sur Windows a été manquante des icônes de swing et qui laisse un mauvais goût dans ma bouche alors que j'essaie de concevoir des UIS professionnelles. Merci pour votre réponse.


En réalité, pour l'exemple de dialogue de fichier spécifique, JavaFX utilise la boîte de dialogue de fichiers natif du système d'exploitation (par exemple, un choix de fichiers Windows sous Windows et un fichier de fichier OS X sur OS X). Ceci est contrairement à la balançoire, autant que je sache, qui rend les dialogues de fichiers en tant que composants swing, ce qui ressemble donc exactement aux différentes plates-formes (mais aussi différentes des boîtes de dialogue de fichiers natifs standard sur chaque plate-forme).



1
votes

Ce paragraphe vous aiderait à choisir. Parce que je lisais cela de java le livre de référence complète de référence Neuvième édition:

Une question qui se pose naturellement relative à javafx est-ce: est javafx conçu comme un remplacement pour balançoire ? La réponse est une qualifiée oui . Cependant, étant donné la grande quantité de le code hérité et le Légions de programmeurs qui savent programme pour balançoire , balançoire être utilisé depuis très longtemps. Ceci est particulièrement vrai pour l'entreprise applications.Evertit, javafx a clairement été positionné comme le plate-forme du futur. On s'attend à ce que, au cours des prochaines années, javafx suppliera balançoire pour de nouveaux projets. javafx est quelque chose que Aucun programmateur Java ne peut se permettre d'ignorer.


1 commentaires

Bien, à l'exception de la dernière phrase "JavaFx est quelque chose qu'aucun programmeur Java ne peut se permettre d'ignorer." => Si vous ne planifiez pas la création de Guisse avec une boîte à outils Java, vous pourriez vraiment vous permettre d'ignorer JavaFX si vous le souhaitez (et la plupart des programmeurs Java que je sais que seuls le code du serveur d'écriture ne le font).