L'avenir du développement de l'interface graphique en Java?
Considérant que
- Sun/Oracle a décidé de ne pas développer Swing après qu'ils ont "inventé" JavaFX
- JavaFX ne fonctionne pas vraiment et certains considèrent que c'est un échec déjà
- pas vraiment indépendant de la plate-nature de SWT, la tâche manuelle de disposer des éléments d'interface et de la nécessité de regrouper une plate-forme spécifique des bibliothèques
est-il une autre voie?
Si je voudrais faire du développement du GUI sur la JVM
- avec une bonne API Swing et SWT ne sont pas mauvais, mais ils ne sont pas vraiment bon non plus.)
- qui "sent" responsive (encore un problème aujourd'hui avec Swing et SWT, malgré les affirmations que c'est résolu.)
- qui ne sera pas obsolète dans quelques années
quelle décision doit-je faire?
Est-il même une troisième option disponible ou une possibilité qu'il pourrait y avoir dans le futur?
Une option
- qui est rapide et réactif (Pas Balancer de l'idéologie du "Si il n'est pas rapide, c'est le développeur de la faute")
- avec une interface native
- avec une seule bibliothèque qui fonctionne sur toutes les plates-formes
Est-ce réaliste?
Merci!
=========
À préciser: Si je dois commencer un nouveau projet de logiciel sur la JVM, il existe plusieurs options, comme l'utilisation de SWT ou Swing, à l'aide de Swing avec des bibliothèques tierces comme SwingX, JIDE, JGoodies, Flamingo ou à l'aide de l'application de cadres comme Plateforme Netbeans ou Eclipse RCP. Est-il pris en charge/suggéré une manière qui affaiblit la douleur normalement associés avec Java GUI de développement?
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Vous ne trouvez pas une réponse objective à cette question, seuls les préférences personnelles et les options.
SWT
Ma préférence personnelle est SWT. J'ai commencé à l'utiliser, lors de la Balançoire était mauvais pour être une option. SWT est "juste" une couche sur le dessus de la native Api de fenêtrage et donc les applications écrites avec SWT envie nativement les applications écrites. Ceux-ci peuvent également être vissé vers le haut. Pas d'API ne sera jamais à l'abri de mauvais développeurs. La performance est aussi vite qu'elle peut obtenir dans mon expérience. Si elle ne l'est pas, il est une autre façon de la mettre en œuvre, où il sera.
SWT de l'API est très faible niveau, ce qui rend la mise en œuvre des trucs de base de façon inattendue fastidieux, mais heureusement, la plupart typique usecases peut être résolu avec JFace, ce qui améliore la situation. Et lorsque vous utilisez l'API de temps vous allez accumuler votre propre util classes. Vous pouvez devenir assez vite dans la mise en œuvre SWT outils.
Depuis SWT vous donne seulement les bases, vous devez MigLayout et Nébuleuse widgets pour survivre. Vous pourriez, comme Vitrage Listes.
Qt Jambi
En fait, j'aurais aimé une autre option que la SWT et de Swing pour vous: Qt Jambi. Mais Nokia a fait jusqu'à présent, et c'est "maintenu par une communauté open-source" maintenant. Donc je ne sais pas à propos de "ne pas être obsolète dans quelques années".
Néanmoins, je suis excité par cette discussion. Certaines personnes ont écrit un SWT mise en œuvre à l'aide de Qt Jambi comme "natifs" de l'API. Ils sont à essayer de comprendre comment contribuer. Ayant Qt comme une option pourrait permettre à votre "bibliothèque unique qui fonctionne sur toutes les plates-formes" pour SWT un jour, mais je ne voudrais pas compter sur elle à tout moment bientôt.
Mais pour moi, votre exigence de "une bibliothèque unique" n'est pas un gros problème. Utiliser maven pour vos générations, ajouter quelques lignes de configuration et vous oublierez très vite.
Swing
Je ne peux pas vraiment comparer SWT Balancer, depuis mon expérience avec Swing est limitted. En tant qu'utilisateur, je n'aime pas la plupart des applications Swing, mais je ne vois quelques jolies.
Aujourd'hui, le natif regard et la sensation de Swing apps devenu assez bon, mais vous ne pouvez pas tromper un utilisateur avec pouvoir. Aussi la performance semble être vraiment bonne dans nouveau et bien fait de la Balançoire apps, mais encore une fois, ce n'est qu'à partir de mon limitted vue en tant qu'utilisateur.
Évidemment il y a plus d'3ème partie extensions pour le Swing que pour SWT - il suffit de faire une recherche sur Google. (Mais là encore, si vous avez à supporter la douleur de l'apprentissage Eclipse RCP, vous obtiendrez un énorme, intéressant aussi bien des infrastructures. Qui ne parle pas de widgets, si, c'est des trucs comme EMF ou RAP. Je ne suis pas Eclipse RCP personne - je n'ai jamais eu assez de patience pour ça...)
Un grand avantage pour le Swing, si vous aimez ce genre de choses, Matisse, le GUI builder de Netbeans. Qt a également bien fait GUI builder.
Résumé
Si vous planifier à long terme, je ne vois pas plus d'options que SWT ou Swing pour l'interface graphique de développement en Java. Les deux sont assez bonnes pour satisfaire la plupart des besoins si vous passez suffisamment de temps. Mais ils ne sont pas parfaits. Vous aurez toujours envie de gens de l'utilisation d'autres langues pour leurs widgets, vitesse de mise en œuvre, de l'outillage, ... Si vous n'êtes pas lié à Java, vous pouvez même préférer Flash ou Qt.
La réponse est préfèrent balancerje pense.
Bien sûr, il est une technologie mature (un peu vieux), mais je ne sais rien d'autre. Il sera cobol de développement du GUI 🙂