Tout à fait d'accords avec GLDavid
Tout à fait d'accords avec GLDavid
Mes liens: Profil | Blog
Mes articles Java : JSF 2.0 | NetBeans 6.9/OSGi
Mes articles Webmarketing : Apprenez à mixer, filtrer, différentes sources de flux (RSS,...)
Vidéos pour les membres :
James Gosling - Créateur du langage Java
Chris Melissinos - Chef Evangéliste
Réseaux sociaux: Twitter Webmarketing | Facebook Webmarketing
Salut !
Je débute en Java et j'utilise donc les 2 pour me familiariser avec les 2 bibliothèques. Pour le moment, je trouve SWT un peu plus simple d'utilisation car elle est assez similaire à la prog Win32 que je connais bien.
Ce qui m'a frappé avec SWING, c'est l'absence de contrôle graphique et de la gestion de l'évènement Paint. D'après ce que j'ai compris, il faut hériter un nouveau composant et surcharger l'évènement Paint, ce qui est plutôt lourd et peu pratique. Ou alors peut être utiliser AWT (j'ai pas encore testé mais ce n'est plus SWING dans ce cas).
Merci pour ce sondage, ça répond à quelques unes de mes questions.![]()
slt !!!!!!
pour ma part j'utilise swing pourquoi ??? j'ai débuter avec et awt je connait pas mais déja tester vite fais ........ je viens de débuter la programmation donc voila sinon dommage que la fusion de quelques composant entre swing et awt ne ce fais pas ....... sinon JGoodies je sais pas comment l'utiliser si quelqu'un pouvais morienter ........
Bonjour, j'ai voté SWT car je l'utilise bien plus que SWING.
J'ai auparavant débuté sur SWING mais j'ai été vite attiré par SWT car je trouve qu'il est plus simple a comprendre, au niveau des constructeurs qui sont pratiquement tous du même type (le conteneur et un int pour le style du composant) et parce que la gestion du positionnement est trés facile, je trouve que les quelques gestionnaire de placement fournis permettent vraiement de remplir facilement toutes les fonctionnalités demandées.
Ce qui est dommage c'est le manque de documentation qui existe vis-à-vis de l'utilisation avancée de SWT/JFace comparé à SWING... mais bon avec de la volonté et un peu de patience on finit toujours par trouver.
Perso j'utilise les 2.
J'utilise SWT dans un cadre particulier (raisons professionnelles) mais je préfère malgré tout Swing
Bonjour,
Moi je suis débutant en java, et pour le moment je préfère apprendre les 2. Mais j'ai une petite remarque, j'ai installé eclipse et Netbeans 6.5 et franchement, sur certains points eclipse est beaucoup meilleur que NetBeans. Premièrement NetBeans est parfois vraiment trop long à l'exécution, surtout si tu change de fenêtre et l'interface de NetBeans est vraiment moche par rapport à celle d'eclipse qui tourne plus vite et il est plus beau . Par contre ce qui me plait avec NetBeans c'est qu'il y a un éditeur visuel c'est pour cela que je l'utilise, quant à eclipse je vois qu'il y en beaucoup qui parle de Visual Editor + Eclipse mais je ne sais pas où je peux trouver ça ?!!
En bref, si NetBeans est créé avec Swing ça veut dire qu'il faut s'attendre à une lenteur significatif des applications et une fenêtre tout en violet (D'ailleurs je ne sais pas comment la modifier). Par contre eclipse qui est créé avec swt on voit bien le résultat, applications plus belles à voir et qui s'exécutent plus vite.
Encore un qui tourne avec une version de java antidéluvienne et qui ne connait pas la notion de look & feel.
Grosso modo à l'heure actuelle niveau performances SWT et Swing c'est quasi identique. La différence entre les deux frameworks se fait plutôt au niveau des orientations prises et des arichtectures utilisées.
Par définition, ce n'est pas possible.. SWT sera toujours plus performant que Swing même si la puissance des machines permet aujourd'hui de "masquer" ce défaut.Envoyé par sinok
Je pense que la majorité de ces personnes est comme moi...Envoyé par c-top
Je dois développer une appli Java professionnelle et je me demande bien quelle technologie choisir! SWT / SWING....
A en croire les différents posts, personne, hélas, n'a la solution idéale...![]()
bonjour,
moi aussi j'utilise swing car je n'ai pas encore eu l'ocasion d'utiliser swt et que je n'ai pas rencontré trop de problème avec swing.
Sinon pour ceux qui n'aime pas les layouts de sun :
http://www.developpez.net/forums/vie...301&highlight=
en résumé :
Il suffit d'utiliser un autre gestionnaire de composant que ceux proposé dans le JDK de sun.
Apparemment les meilleurs sont :
- formLayout : http://www.jgoodies.com/freeware/forms/index.html
à lire : http://www.jgoodies.com/articles/forms.pdf
- explicitLayout : http://www.zookitec.com/explicitlayout.html
ex : http://www.zookitec.com/GeometryDemo.html
voilou![]()
Un article qui commente et compare certains points avec des examples en swing et swt
http://<br /> http://www.ftponline...._pf.aspx<br />
Personnellement, j'utilise swing car... je ne connais même pas swt...
Il existe à l'heure actuelle deux solutions majeures d'API graphiques en Java: Swing et SWT.
Swing est une bibliothèque graphique multi-plateformes décrivant des composants graphiques complexes, complètement écrits en langage Java, et ne faisant pas appel aux composants de la plateforme, ce qui le rend totalement indépendant du système d'exploitation.
Par opposition, la stratégie de SWT repose sur l'utilisation des composants natifs de l'OS. SWT est malgré tout écrit à 100% en Java : les appels natifs servent uniquement à invoquer les composants de l'OS (mapping "one-to-one"). En conséquence, l'implémentation de l'API SWT n'est pas multiplateforme mais l'application qui l'utilise l'est.
Ce comparatif a pour objectif de donner des éléments de comparaison en faveur ou en défaveur de chacune des solutions pour aider les développeurs à choisir l'une d'entre elles. Les différents aspects abordés sont: les performances, la portabilité, l'apparence, l'utilisation.
Performances :
Au premier abord, il est tentant de penser que la stratégie d'utilisation de composants natifs de SWT est plus performante que celle de Swing.
Pourtant, dans le cas particulier de l'affichage d'un très grand nombre de données, la stratégie de SWT est handicapante. En effet, en SWT les données à afficher doivent systématiquement être copiées dans les composants natifs, alors qu'en Swing elles sont utilisées directement, sans recopie. De plus, l'aspect générique des mécanismes implémentés dans les viewers JFace jouent en défaveur de l'optimisation des performances. Pour s'en persuader, il suffit simplement de créer un TableViewer JFace ainsi qu'une JTable Swing affichant tous deux quelques milliers d'éléments, puis de comparer les temps de chargement.
Cependant, le plus souvent, le nombre d'éléments à afficher dans un composant graphique est modéré. Les données sont souvent filtrées ou rangées dans des structures arborescentes pour rester facilement accessible à l'utilisateur. Dans ces conditions, SWT ne subit pas de pertes de performances significative.
De plus, sur une configuration matérielle moyenne, les composants natifs utilisés par SWT sont plus rapides que les composants complexes de Swing. Ceci se traduit par une meilleure rapidité de chargement des composants et surtout une meilleure réactivité aux sollicitations de l'utilisateur.
Portabilité :
La stratégie de SWT oblige l'utilisation de bibliothèques natives spécifiques à l'OS alors qu'il n'y a aucune contrainte particulière en Swing. Quelle que soit l'API, l'application est portable, mais dans le cas de SWT, il faudra préalablement installer les bibliothèques natives et les jars nécessaires sur le système du client ou mettre en place un système de chargement dynamique de ceux-ci.
Apparence :
Swing a l'avantage de permettre facilement le changement et la redéfinition totale de son style par le biais des "Look'n'Feel". Ce mécanisme n'est pas possible en SWT. Les composants natifs utilisés par SWT présentent l'avantage de ne pas dérouter l'utilisateur.
Beaucoup de personnes trouvent les Look'n'Feel fournis en standard avec Swing esthétiquement moins "professionnels" que les composants natifs de Windows et ceux de GTK pour linux utilisés par SWT. Cependant, il est tout à fait envisageable de développer ou d'utiliser un autre Look'n'Feel avec Swing.
Utilisation :
SWT utilisant les ressources de l'OS, le développeur a la charge de les libérer. Sur ce point, Swing est plus simple d'utilisation puisque l'allocation et la libération des ressources sont gérées automatiquement avec le garbage collector.
Cependant, l'utilisation de SWT à l'aide d'une surcouche outil "JFace" s'avère très simple et efficace. Les Viewers JFace permettent d'utiliser les principaux composants non-triviaux SWT par le biais de 3 notions principales qui séparent clairement les responsabilités:
– l'objet Input représente l'objet à afficher par le Viewer
– l'interface ContentProvider est chargée de récupérer les informations sur le contenu de l'objet Input
– l'interface LabelProvider est chargée de produire le contenu graphique à afficher par le Viewer
D'après mon expérience personnelle, le développement d'interfaces graphiques avec SWT/JFace semble plus simple, plus rapide et plus clair qu'en Swing.
De plus, SWT procure un certain nombre de composants réutilisables tels qu'un "assistant" très appréciable dans le domaine professionnel.
De par son ancienneté, l'API Swing est plus documentée que SWT, même si un gros effort a été fourni par IBM à ce sujet.
Choix :
Le choix d'une de ces deux API reste assez difficile car chacune d'elle présente des avantages importants par rapport à l'autre. Il doit être orienté en fonction des besoins de l'application à développer.
Si le nombre de données à afficher est important, SWT est à proscrire. Dans le cas contraire, SWT reste globalement plus performant que Swing. Sa rapidité d'exécution rend les composants graphiques plus réactifs qu'en Swing et procure donc un meilleur confort d'utilisation.
Esthétiquement, Swing est plus personnalisable qu'en SWT. Ce dernier présente l'avantage de ne pas dérouter l'utilisateur en utilisant les composants natifs du système d'exploitation.
J'ai trouvé que la simplicité d'utilisation de JFace ainsi que la disponibilité de composants réutilisables permettent de développer des interfaces utilisateurs assez rapidement.
La nécessité d'utilisation de bibliothèques natives en SWT est incontestablement moins pratique qu'une application Swing sous forme d'un unique jar, déployable facilement et sur n'importe quelle plateforme.
Enfin, on peut souligner qu'à l'heure actuelle, il est plus difficile de trouver des développeurs SWT que des développeurs Swing. De ce fait, le choix de SWT nécessitera souvent une formation des développeurs, même si l'API est assez simple à utiliser.
en meme temps que le java soit moins rapide ca se comprend, sisi un peu...Envoyé par MATHON
on pourrait aussi comparer le temps mis en c++ pour faire l'interface (sans rad, codé a l'ancienne dans la sueur...), dis comme ca on peut etre plus tolerent sur la rapidité d'execution, en general !!
enfin perso j'utilise swing pourtant je bosse sur eclipse...![]()
si swt n'est pas portable sa fout un peu en l'air le writeOnceRunAnywhere, un des grand avantage du java ?
J'utilise SWING pour le développement d'applet (client-rich).
J'utilise SWT/JFace pour le développement d'un plugin sous eclipse
Mais perso, je trouve que le sondage est un peu faussé.
De ce que j'ai vu de l'utilisation de SWT. On peut plus le comparer à AWT qu'avec SWING.
Comme qq1 la déjà noté, la séparation entre le modèle et la vue n'est pas réelement abordé dans SWT.
Par contre JFace qui est une librairie au-dessus de SWT offre justement les outils pour réaliser la séparation entre le modèle et la vue.
Personnelement, j'ai fait bcp plus de programmation Swing que SWT/JFaces donc je me trompe peut-être.
Un expert pourra peut être confirmer ou infirmer ?
Un lien confirmant ;-):Envoyé par syj
http://etudiant.univ-mlv.fr/~nsebban/SWT/principes_utilisation_swt_avec_jface.html
Hé bien moi j'utilise pour l'instant SWING pour de très grosses appli mais on passe bientôt à SWT. La rapidité est un facteur important pour nos utilisateur qui ne sont pas content des performances de nos applications (niveau GUI). Ainsi un groupe à testé SWT et la différence est indiscutable. Quant au développement, je ne connais que très peu mais ça me semble beaucoup plus simple et structuré que SWING.
Pour répondre à vaeder, Sun ne prend pas toujours les bonnes décision et reprennent parfois (pour ne pas dire souvent) les bonnes idées développées par d'autres (Struts devenus les JSF). JDO n'est pas non plus le top et les Entity Beans non plus d'ailleurs. Hibernate est une solution moins couteuse, plus rapide et plus éprouvées. Il est ainsi possible qu'un jour Sun nous sorte un SMachin à la sauce SWT.
Mais ceci n'est que mon avis après des essais sur les différents produits et quelques années d'expérience. Je pense surtout que chacun se fait sa propre expérience et que l'idéal est de se faire son propre avis et surtout que ça fonctionne comme on le veut.
A moins que la solution vienne d'ailleurs
http://gcc.gnu.org/java/July 16, 2004
AWT and Swing support continues to improve rapidly. Thomas Fitzsimmons of Red Hat added support for the AWT 1.0 event model, still used by many web applets. This means that Slime Volleyball now runs on GCJ and gcjwebplugin. Here's the evidence!
merci à eux
J’utilise SWT quand je veux compiler mon code java en binaire natif (*.exe sous Windows).
GCJ compile sans problème SWT est link l’objet avec les DLL de SWT.
Chose qui n’ai pas possible avec Swing, il y a bien un portage de Swing (SwingWT) qui est en fait un sur ensemble de SWT mais qui est compatible sur la syntaxe avec Swing et qu’on peut compiler sans trop de souci avec GCJ, mais cette bibliothèque est encore jeune et pas totalement complète.
http://gcc.gnu.org/java/
http://swingwt.sourceforge.net/
les jfc sont une couche au dessus de swing... donc c'est encore plus lent?
qu'apporte jfc?
Partager