Swt et Swing - Java - Programmation
Marsh Posté le 28-05-2003 à 23:22:04
BOn ba perso j'ai découvert ça y a pas très longtemps aussi. Simplement, il semblerait que cette API bloque parfois des messages de l'OS. C'est kadreg qui m'a dit ça et p'têt aussi que j'ai mal pigé, mais apparemment le truc semble encore pas tout à fait clean (au niveau code et système, j'entends).
En attendant, c'est certain que ça a l'air alléchant. P'têt que tu peux essayer de faire un dev à côté de ton taf avec SWT pour voir ce que ça donne ?
Marsh Posté le 28-05-2003 à 23:35:25
c'est un truc jdk1.4 only ou c autre chose? j'avais cru que ct un L'N'F en fait!?
Marsh Posté le 28-05-2003 à 23:40:12
the real moins moins a écrit : c'est un truc jdk1.4 only ou c autre chose? j'avais cru que ct un L'N'F en fait!? |
C'est une API graphique d'eclipse.org. En fait, Eclipse est écrit avec
L'intérêt, c'est que l'API est tout OS. Ca se base sur les composants graphiques natifs à l'OS donc perfos +++++ par rapport à Swing et évidemment un LNF complètement équivalent à toute autre appli tournant sur l'OS. Inconvénient : faut distribuer des libs natives à l'OS sur lequel tu vas faire tourner l'appli
cf http://www.eclipse.org/eclipse/pre [...] lides.html (partie SWT) pour une présentation rapide et http://www.eclipse.org/gef/ pour le reste.
Marsh Posté le 28-05-2003 à 23:41:09
ReplyMarsh Posté le 28-05-2003 à 23:42:20
y'a un truc qui m'échappe
c'est le 2e projet libre sur lequel je tombe qui font une presentation-slides (déjà c'est une drole d'idée à la base), ... avec ms-office, et exporté dans le pseudo-html generé par celui-ci
Marsh Posté le 28-05-2003 à 23:43:03
the real moins moins a écrit : y'a un truc qui m'échappe |
Ouais, ça m'a fait bizarre aussi. Le vilain PovrePoint inséré dans le HTML...
Marsh Posté le 28-05-2003 à 23:44:26
cela dit moi je serais curieux de voir comment les mecs d'idea s'y sont pris, parce que niveau perfs ça se defend plus que tres bien et j'y rien vu qui ressemblait à une dll, il me semble!?
Marsh Posté le 28-05-2003 à 23:45:20
Taiche a écrit : |
d'autant que c moche, pas pratique et inutile leur truc
faire 30 pages d'html avec 2 lignes de texte chaque, je vois pas l'interet de faire du povpoint koi
Marsh Posté le 28-05-2003 à 23:47:39
euh jsuppose que l'api d'swt est complement differente de swing?
Marsh Posté le 28-05-2003 à 23:47:41
the real moins moins a écrit : cela dit moi je serais curieux de voir comment les mecs d'idea s'y sont pris, parce que niveau perfs ça se defend plus que tres bien et j'y rien vu qui ressemblait à une dll, il me semble!? |
Tu parles IntelliJ, là ?
Marsh Posté le 28-05-2003 à 23:48:10
the real moins moins a écrit : euh jsuppose que l'api d'swt est complement differente de swing? |
Oui. Mais ça semble bien plus simple à première vue. Mais j'me trompe peut-être, j'ai juste survolé
Marsh Posté le 28-05-2003 à 23:49:50
Taiche a écrit : |
oui, idea/intellij, j'ai jamais su lequel etait le nom de la boite et lequel le nom de l'ide
Marsh Posté le 28-05-2003 à 23:50:37
the real moins moins a écrit : oui, idea/intellij, j'ai jamais su lequel etait le nom de la boite et lequel le nom de l'ide |
Bin c'est surtout que j'étais dans le trip Eclipse/SWT donc j'pigeais pas trop
J'connais pas IntelliJ
Marsh Posté le 28-05-2003 à 23:50:44
Taiche a écrit : |
hmmm...
je suppose que si eclipse est basé dessus ça doit etre quand meme relativement complet...
grmbgbrgbllbl...
Marsh Posté le 28-05-2003 à 23:51:17
Taiche a écrit : |
ha bon, je croyais que tu l'avais déjà utilisé aussi...
Marsh Posté le 28-05-2003 à 23:53:01
the real moins moins a écrit : ha bon, je croyais que tu l'avais déjà utilisé aussi... |
Malgré toute la pub que Darque et toi en faites, j'me suis pas laissé encore avoir
C'est gratuit/libre/pas payant ou c'est un truc spécial entreprise ?
Marsh Posté le 28-05-2003 à 23:54:48
Taiche a écrit : |
essai 30 jours (renouvelables si t'as des alias illimités sur ton mail ... quoi qu'apres 5 ou 6, je recevais plus les licences )
jsais plus le prix de la license "normal", et y'a une license genre etudiant ou jsais plus quoi pour pas trop cher, mais bon quand meme dans les 200$ me semble...
edit: ha non, 99$ l'edition "academic" (faut etre student ou prof), par contre >400 pour la "normale".
Marsh Posté le 29-05-2003 à 00:00:26
the real moins moins a écrit : |
Ouais ba comme Eclipse me suffit amplement (encore que le plugin PHP que j'ai trouvé laisse à désirer pour le moment), j'vais pas m'aventurer là-dedans tout de suite
Marsh Posté le 29-05-2003 à 00:03:10
Taiche a écrit : |
bah idea c java only (enfin, xml et html aussi mais bon, build.xml->ant, et jsp quoi)... mais ça roxxe.
eclipse à l'air pas mal, mais à priori j'accroche pas. et puis je suis habitué à idea et on m'a payé la license alors
Marsh Posté le 27-06-2003 à 17:12:39
Je fais remonter ce sujet parce que je me trouve dans la situation de Ayachi. Et je trouve pas les réponses satisfaisantes J'aimerais savoir:
1) si Ayachi est toujours là ou s'il est perdu dans les méandres de SWT! Bref, ce qu'il en pense après utilisation...
2) en plein développement multi-plateforme (Win, Lin, Mac), vaut-il mieux utiliser swing ou SWT (j'ai un doute pour la portabilité de SWT)?
Marsh Posté le 27-06-2003 à 19:24:24
Willyzekid a écrit : |
Baaaaa... t'as lu sur le site d'Eclipse comment ça marche ? Pour la portabilité du code, y a pas de souci. Pour le runtime, c'est à toi de fournir la librairie qui va bien : une dll sous Windows, un .so sous Solaris, etc...
C'est pour ça que quand tu downloades Eclipse, tu dois choisir une plateforme sur laquelle tu vas le faire tourner. Eclipse est écrit en Java et SWT mais faut faire un choix d'OS avant l'install notamment pour le choix des libs SWT qui seront utilisées. Cf le plugin SWT dans ton install d'Eclipse qui se situe sous eclipse\plugins\org.eclipse.swt.win32_2.1.0\os\win32\x86 ('fin là c'est un bête copier/coller de mon install sous Windows).
Marsh Posté le 27-06-2003 à 19:51:43
parait que ça marche meme sous mac OS X
mais bon c chiant qu'il faille installer un truc os-dependant.. si l'utilisateur change de jdk, paf, ça marche plus
ils auraient du prevoir un systeme d'install automatique, ça ça aurait été classe
(genre qui telecharge la lib qui va bien en fonction de l'os qui la met là ou il faut et qui redemarre l'appli )
Marsh Posté le 27-06-2003 à 20:02:58
the real moins moins a écrit : |
Comprends pas...(putain je suis à l'ouest)
Pourquoi changer de jdk (ou jre), ca fait nécessairement changer quelque chose?? C'est pareil que quand tu écris avec swing non? ton code n'est pas plus assuré de fonctionner avec un autre jre que celui pour lequel tu as développé?
Marsh Posté le 27-06-2003 à 20:06:23
Willyzekid a écrit : |
euh normalement si
si un truc marche avec une jre1.3, il doit marcher avec une 1.4
(bon y'a qques differences mais c'est minime)
si mtnt j'installe un truc qui utilise swt sur ma jdk1.3 et que demain je m'installe une jdk1.4 bah l'appli swt pourra pas l'utiliser à moins que je reinstalle la lib swt
mais bon, pê qu'ils ont bien prévu le coup en fait j'en sais rien
et j'ai jamais utilisé swt, pê que ça vaut le coup par rapport à ce qu'on gagne
Marsh Posté le 27-06-2003 à 20:08:37
Taiche a écrit : |
Ben ouais et c'est bien ca qui m'inquiète:
Citation :
The GTK port of SWT is based on GTK2. It is stable but needs performance tuning and is missing Printing and Accessibility. Drag and Drop and DBCS support were added in release 2.1.
The performance of this port is now comparable to win32 version for most uses. A significant number of low level performance improvements were made. Support for DBCS was added in 2.1. Accessibility support is still required.
SWT for Qt/E will be included in the next release of the IBM WebSphere Micro Environment and WebSphere Customer Environment products. We are currently working on determining the feasibility of releasing SWT for Qt/E to the Eclipse project. |
Marsh Posté le 27-06-2003 à 20:13:42
the real moins moins a écrit : euh normalement si |
Putain, je me suis fait chier à écrire mes librairies C++ de maniéres portables (et ca a été du bonheur). Si en plus je dois rendre la GUI portable...
Marsh Posté le 27-06-2003 à 21:54:21
Willyzekid a écrit : |
Ba dans ce cas, fais du Swing Mais viens pas te plaindre pas des perfos, après
C'est pas vieux, SWT. Et si toi tu t'es bien cassé le cul à rendre tes applis portables, dis-toi que pour Swing c'est toute une API graphique qu'ils doivent porter sur plusieurs OS. Forcément c'est long et y a certainement des bugs (cf ce que j'en dis au début du topic), mais en attendant, les perfos sont là
Marsh Posté le 27-06-2003 à 23:49:39
the real moins moins a écrit : si mtnt j'installe un truc qui utilise swt sur ma jdk1.3 et que demain je m'installe une jdk1.4 bah l'appli swt pourra pas l'utiliser à moins que je reinstalle la lib swt |
je vois vraiment pas pkoi
Marsh Posté le 28-06-2003 à 01:11:48
benou a écrit : |
Ui, pareil A moins qu'il y ait une version spécifique de SWT par version de JVM... ce qui m'étonnerait puisqu'Eclipse se lance aussi bien avec une JVM 1.3 qu'avec une 1.4
Marsh Posté le 28-06-2003 à 01:59:30
attend j'ai loupé un épisode? y'a pas une dll pour swt?
si c'est le cas elle doit etre dans jre/lib/ext (ou je sais plus ou enfin qque part par là quoi)
donc si je m'installe une nvlle jre la dll elle y sera pas nan?
Marsh Posté le 28-06-2003 à 05:52:39
the real moins moins a écrit : attend j'ai loupé un épisode? y'a pas une dll pour swt? |
La dll, c'est toi qui la distribue. Seul Swing et AWT font partis du JRE. SWT en revanche ne fait pas parti d'un quelconque JRE. Et quand tu installe un nouvel environnement, ta dll, elle reste...
Marsh Posté le 28-06-2003 à 12:34:51
Willyzekid a écrit : |
Vala
Mouinmouin : tu mets la library où tu veux, c'est juste pour le runtime. cf un des mes posts ci-dessus :
Citation : le plugin SWT dans ton install d'Eclipse qui se situe sous eclipse\plugins\org.eclipse.swt.win32_2.1.0\os\win32\x86 |
Si tu changes de JVM, ça affectera pas ton install d'Eclipse et t'auras rien à faire.
Marsh Posté le 28-06-2003 à 14:21:35
Taiche a écrit :
|
pourtant quand on installe javaxcomm machin bidule, la dll, on peut pas la mettre n'importe ou, comment i font
(edit: donc il faut avoir une copie de cette dll pour chaque appli qui l'utilise... enfin tu vas me dire c'est souvent pareil avec les jar files... elle pese cb cette dll?)
Marsh Posté le 28-06-2003 à 17:25:41
the real moins moins a écrit : |
Ah ba ça, je sais pas, j'ai pas plongé trop les mains dedans. Mate sur le site d'Eclipse, p'têt ils en parlent plus abondamment.
the real moins moins a écrit : |
DLL = 276 Ko
JAR de SWT = 1 Mo environ.
Marsh Posté le 28-06-2003 à 21:23:49
ok ça va encore
(enfin 1mo le jar c bcp mais bon )
Marsh Posté le 29-06-2003 à 20:07:44
Willyzekid a écrit : Je fais remonter ce sujet parce que je me trouve dans la situation de Ayachi. Et je trouve pas les réponses satisfaisantes J'aimerais savoir: |
bah finalement j'ai pris le risque de l'utiliser et pour l'instant elle me plait beaucoup (comme swing d'ailleurs aussi, car comme je programmais avant en C++, Win32 et MFC bah comment dire ... c'est plus simple), je la trouve plus simple que swing (sur certains points mineurs cependant) mais surtout l'interface est beaucoup plus légère. De plus je ne l'utilise que sous Windows. Je l'ai utilisée avec jFace pour le treeviewer, le tableviewer et j'ai développé des widgets ainsi que des layout personnalisé. Par contre quand j'ai vu le code ça m'a beaucoup rappelé le code pour win32 . ah oui le dispose aussi qu'il faut bien géré.
C'est pour une appli complète de gestion de cabinet médical.
ah oui il y'a suffisamment de code example pour se débrouiller avec tous les cas de figure qui ce sont présentés à moi.
Mais bon j'ai du digérer 200 pages de tutorials en anglais et ça m'a convaincu.
Alors voilà pour moi ça été concluant .
Marsh Posté le 29-06-2003 à 20:12:33
par rapport à swing c'est vachement different ou pas? les concepts de base etc, tout est à revoir, ou c'est pareil ?
edit: ha bah j'avais pas vu l'edit sur les 200 pages de tutos
Marsh Posté le 29-06-2003 à 20:22:31
the real moins moins a écrit : par rapport à swing c'est vachement different ou pas? les concepts de base etc, tout est à revoir, ou c'est pareil ? |
Non franchement, je l'ai trouvée similaire sur de nombreux points (j'ai avalé "Swing la synthèse" juste avant), listeners et tout. Le seul truc qui change c'est que si tu créés une ressource système (image, fonte etc ...), tu dois faire un dispose dessus avec un AddDisposeListener, qui sera appelé par le framework SWT.
Les constructeurs de composants sont tous de la forme constructeur( Composite parent, int style ), pas de add.
Mais bon vaut mieux l'utiliser avec jFace pour les viewers qui propose un design Vue-Modele assez élégant et simple à utiliser.
Marsh Posté le 29-06-2003 à 20:24:09
the real moins moins a écrit : par rapport à swing c'est vachement different ou pas? les concepts de base etc, tout est à revoir, ou c'est pareil ? |
non franchement si t'as l'habitude de swing, ça s'avale en quelques jours. et les codes exemples sont très simples à assimiler.
Je l'ai fait car j'avais pas le droit à l'erreur.
Marsh Posté le 28-05-2003 à 21:11:36
Salut,
J'ai besoin de développer un projet pour lequel l'interface doit être très soignée.
D'habitude, je fais ça en swing avec quelques fois des look and feel trouvés sur le net, mais c'est pas toujours très beau enfin à mon avis.
Mais en recherchant un peu sur le projet Eclipse, je suis tombé sur SWT et effectivement l'interface que ça génère a l'air vraiment pas mal, normal puisque ça utilise directement les composants de l'OS.
Comme j'ai pas envie de me lancer de me lancer dedans sans savoir ce que ça comporte (quelques exemples testés mais sur un gros projet ça suffit pas), peut-être qu'il y'a quelqu'un qui développe avec de façon régulière qui pourrait me renseigner.
Merci
PS: j'ai besoin de développer sur Windows seulement. donc la portabilité je m'en passe.
Message édité par ayachi le 28-05-2003 à 21:12:07