Developpez.com

Télécharger gratuitement le magazine des développeurs, le bimestriel des développeurs avec une sélection des meilleurs tutoriels

Quel toolkit graphique utiliser dans quel cas
En toute indépendance du langage ?

Le , par dourouc05, Responsable Qt
Chers membres du club,

Ce sondage est limité, car on ne peut pas envisager de citer tous les toolkits graphiques, qui sont très nombreux. Ce sondage représente les plus courants ou, du moins, les plus utilisés parmi les membres du club Developpez.com. Ici, il s'agit de toolkits graphiques, c'est-à-dire de bibliothèques permettant de créer des interfaces graphiques (GUI), indépendamment de leur langage - les plus utilisés d'entre eux sont d'ailleurs disponibles pour une série de langages.

Merci de voter pour votre toolkit préféré et, si possible, d'écrire votre témoignage pour expliciter votre avis :
- pourquoi ce choix ;
- les plus/avantages ;
- les moins/inconvénients ;
- quels projets réalisez-vous avec et pourquoi ;
- vers quels autres tookits pensez-vous évoluer dans le futur ;
- comment vous êtes-vous formé ou avez-vous été formé sur ce tookit ;
- est-ce une utilisation amateur, professionnelle ou éducative ;
- avez-vous fait votre choix pour raison professionnelle, personnelle ou par plaisir ;
- avec quels langages utilisez-vous ces toolkits ;
- quelles autres toolkits avez-vous utilisé, pourquoi, dans quel cadre ; quels sont les avantages et inconvénients des uns sur les autres ;
- conclusion ;
- etc.

Comme il s'agit d'un sondage/ débat, merci de suivre les consignes strictes suivantes :

- SMS interdit : essayez d'écrire en français ;

- évitez de multiplier des messages courts, essayez de faire plutôt un seul message avec tous les points ci-dessus (vous pouvez éditer vos messages pour les améliorer). Les multiples messages seront acceptés uniquement en cas de réponse de qualité à un débat technique de qualité ;

- donnez des précisions claires, nous avons par exemple toujours besoin de savoir sur quelle version votre témoignage porte ;

- les messages type taverne ou SMS seront effacés immédiatement sans préavis ou explications.

Notre but est de créer un débat technique de qualité.

Vous pouvez tous faire un témoignage. Par contre, pour débattre et faire plusieurs messages, vous devez être de préférence expérimenté, pas un débutant, et connaître plusieurs toolkits.

Si vous êtes débutant et que vous ne connaissez qu'un seul toolkit, vous êtes le bienvenu pour voter et apporter un témoignage, mais pour le débat, essayez de comprendre que vous êtes mieux placé pour lire le sujet qu'y participer...

Merci de votre compréhension à tous.



Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de psykoprof psykoprof - Membre du Club http://www.developpez.com
le 16/03/2011 à 8:55
J'utilise actuellement Qt pour quasiment tous mes développement. Je l'utilise également dans mon enseignement avec mes élèves de 2° année(BTS IRIS : informatique et réseau)
- pourquoi ce choix
Multiplateforme, une certaine simplicité d'utilisation en comparaison des MFC, et je trouve la doc très bien faite.
- les plus/avantages
Voir ci-dessus. La bibliothèque est bien fournie mis à part l'accès à la liaison série qui n'est pas intégrée par défaut.
- les moins/inconvénients
Là comme ça je vois pas mais on pourrait dire éventuellement que dans le cadre de l'enseignement c'est une surcouche du C++ qui n'amène pas à bien comprendre les mécanismes sou-jacents.....après c'est à mois aussi de le montrer en faisant du C++ standard (ce que je fait tout de même).
- quels projets réalisez-vous avec et pourquoi
Principalement des manip en TP avec les élèves puis en 2° année les élèves l'utilisent dans leur pojet au cours des 5 dernier mois et en ce qui me concerne j'ai plusieurs projets perso en cours de développement que je n'arrive jamsi à terminer..lol
- vers quels autres tookits pensez-vous évoluer dans le futur
JAVA/Swing : je m'en sers de façon très ponctuelle en licence pro pour des applications client/serveur.
JAVA/Android : Que je commence à utiliser dans le but de l'intégrer dans mon enseignement.
- comment vous êtes-vous formé ou avez-vous été formé sur ce tookit
J'ai fait, il y a 5 ans un stage de 2 jours puis plus rien pendant 2 ans et je m'y suis remis seul il y a 3 ans et depuis je l'enseigne.
- est-ce une utilisation amateur, professionnelle ou éducative
Principalement éducative. Mais j'ai 2 projets en cours que je prévois de déployer par la suite.
- avez-vous fait votre choix pour raison professionnelle, personnelle ou par plaisir
Au départ par plaisir et puis comme cité plus haut je l'ai intégré dans le boulot.
- quelles autres toolkits avez-vous utilisé, pourquoi, dans quel cadre ; quels sont les avantages et inconvénients des uns sur les autres
J'ai utilisé la SDL en première année car on ne fait que du C donc cette bibliothèque est pas mal pour ça.
- conclusion
Je pense continuer activement à développer avec Qt et petit à petit JAVA/Android.
Avatar de gwinyam gwinyam - Membre chevronné http://www.developpez.com
le 16/03/2011 à 9:00
D'accord avec tomlev, certes WPF est un outil puissant. Mais la vache, c'est pas simple d'accès du tout. Passé la jolie boite hello world, le binding est lieu obscur et nécessite à mon sens d'être vraiment "étudié" pour être compris.

Psykoprof : les MFC, c'est une technologie tellement ancienne... heureusement que les technos actuelles les dépassent, ça serait malheureux tout de même.
Avatar de nico84 nico84 - Membre expert http://www.developpez.com
le 16/03/2011 à 9:40
Bonjour,

Je pense que j'utilise windows form sans le savoir
C'est pas très joli mais ça va vite... Pour des applis de gestion sur PC c'est bien !

Par contre ce n'est pas "en toute indépendance du langage" en tout cas pas tel que je l'utilise.
Avatar de vincepoencet vincepoencet - Membre régulier http://www.developpez.com
le 16/03/2011 à 11:02
WPF

- pourquoi ce choix
Etant développeur .net, c'est l'évolution naturelle des winforms.
Dans ma boite on developpe un ERP depuis plusieurs années,
pouvoir intégrer du WPF dans des winforms est un gros plus pour faire une évolution
en douceur.

- les plus/avantages
-Le binding puissant (et le modele MVVM rendu possible gràce à ça)
-Le systeme de Data/Control template, style, theme. On peut faire des trucs simpas/originaux
sans devoir aller dans le cambouis (onPaint à la main, ce genre de choses).
-Le combo XAML+Intellisence qui permet d'être bien plus productif que les IHM builder à la souris
quand on a l'habitude
-Possibilité avec silverlight de partage de code pour faire du web.
-Pouvoir mettre un datagrid dans le tooltip d'une checkbox contenue dans un bouton naturellement et sans bricolages.
(c'est avec un truc comme ça que j'ai convaincu mon boss )

- les moins/inconvénients
-Beaucoup de texte utilisé pour le binding ou autre,
du coup on a potentiellement des plantages dues à des fautes de frappes, et ce n'est pas détecté à la compil.
-Certains controles mal pensés, par exemple le datepicker doit faire 30px de haut, la combo 25 et le textbox 20,
pas très pratique pour avoir des fiches homogènes.
-Performances ? Dans un ERP c'est pas un soucis, mais ce n'est probablement pas la lib la plus rapide.
-Demande un certains temps de formation

- quels projets réalisez-vous avec et pourquoi
-Principalement un ERP pour le travail, et des outils d'admin associés.
-Mes projets persos, ça peut aller de logiciels classiques jusqu'au petit jeu à la farmville.

- vers quels autres tookits pensez-vous évoluer dans le futur
-Silverlight pour m'orienter un peu plus web.
-J'attendais beaucoup de QML mais j'ai été très déçu, donc un peu de QT pour mes dev c++
mais probablement pas de QML

- comment vous êtes-vous formé ou avez-vous été formé sur ce tookit
-Autoformation (msdn, developpez, livres...)

- est-ce une utilisation amateur, professionnelle ou éducative
-Amateur et pro

- avez-vous fait votre choix pour raison professionnelle, personnelle ou par plaisir
-Principallement par plaisir, c'est vraiment simpa de developper en WPF
(je suis presque content quand on me demande des controles spécifiques)

- avec quels langages utilisez-vous ces toolkits
-C#, VB

- quelles autres toolkits avez-vous utilisé, pourquoi, dans quel cadre ; quels sont les avantages et inconvénients des uns sur les autres ;
-QT, Swing, Cocoa.
Les 3 pour utilisation perso, j'apprécie QT et Cocoa, Swing beaucoup moins.

- conclusion
Pour moi WPF à une génération d'avance sur la concurrence et permet simplement et intuitivement
de faire des choses très difficile avec les autres frameworks.
Il y a certainement des choses perfectibles car c'est relativement jeune et encore pas assez utilisé
en production, mais déjà à l'heure actuelle c'est de loin le framework le plus puissant.
Avatar de tomlev tomlev - Rédacteur/Modérateur http://www.developpez.com
le 16/03/2011 à 11:20
Citation Envoyé par vincepoencet  Voir le message
(je suis presque content quand on me demande des controles spécifiques)

Quel enthousiasme
Avatar de vincepoencet vincepoencet - Membre régulier http://www.developpez.com
le 16/03/2011 à 11:59
Disons que contrôle spécifique = maintenance spécifique, donc c'est simpa à faire mais sur le long terme...
Avatar de sekaijin sekaijin - Expert éminent http://www.developpez.com
le 16/03/2011 à 12:47
Actuellement, je ne développe pas
Mais pour les dernier Ext-JS je n'ai donc pas voté

- pourquoi ce choix
Besoin de développer des application sur l'intranet ayant une IHM solide et efficace. Pas des web app avec leur notion de pages. (on fait plein de belle chose avec mais les utilisateur son parfois dérouté car cela resemble à une application comme celle qu'il a sur son bureau mais fonction comme un site web)
donc des applis comme sur le bureau mais sur le web.
besoin de reactivité. et de richesse en terme d'ihm
besoin d'indépendence part rapport à la techno sur le serveur (java, php, ...)

- les plus/avantages ;
- La licence (lgpl)
- en plus de la richesse des composant.
- Le modèle de programation (comme avec Qt, WMFC TK etc. on construit l'IHM avec le langage contrairement à Jquery ou l'on construit l'IHM en partie avec HTML auquel on ajoutes des éléments)
- La rapidité de prototypage pour faire des démo interactive indépendament du serveur
- faible besoin d'outillage pour le développeur (un navigateur wamp est pspad ou notepad++)

- les moins/inconvénients ;
- de nombreux design pattern implémentes à connaitre pour tirer partie du framwork
- L'apprentissage peut être un peu long au début.
- la terminologie trompeuse. "classe" alors qu'il sagit de protoype du coup au début on à l'impression qu'Ext reproduit un lagnage à base de classe sur javascript alors qu'en fait il exploite et permet d'exploiter particulièrement bien la notion de prototype.

- quels projets réalisez-vous avec et pourquoi ;
Tous les projets nécessitant une "grosse" partie IHM assurant l'intégration pour un poste métier de nombreuse application du SI

- vers quels autres tookits pensez-vous évoluer dans le futur ;
Je n'ai pour le moment pas de besoij particulier

- comment vous êtes-vous formé ou avez-vous été formé sur ce tookit ;
en parcourant les très nombreux exemples et en essayant.
petit bémol les exemples sont parfois trops simple pour être digne d'intérêt (pas assez formateur) et parfois très complique et il est difficile d'en tirer un enseignement
la doc bien faite
les forum

- est-ce une utilisation amateur, professionnelle ou éducative ;
pro et amateur

- avez-vous fait votre choix pour raison professionnelle, personnelle ou par plaisir ;
professionnelle

- avec quels langages utilisez-vous ces toolkits ;
Uniquement javascript (il existe aussi java)

- quelles autres toolkits avez-vous utilisé, pourquoi, dans quel cadre ; quels sont les avantages et inconvénients des uns sur les autres ;
- MFC il y a très longtemps
- TK pour des outils d'administration
- Cocoa (sur mon mac).
- Zend-Framework pour des raison pro
- divers toolkit java
Avatar de Terry-Slipknot Terry-Slipknot - Membre du Club http://www.developpez.com
le 16/03/2011 à 20:59
J'utilise Gtk. J'ai commencé avec les binding C++, mais à la vu de la documentation très réduite (qui s'est toute fois bien amélioré) et de la difficulté à la prise en main j'ai migré vers Vala.

Pourquoi ce choix:
Parce-que je voulais une alternative à Qt qui puisse être mieux construit, mieux intégré à Linux (notamment à GNOME) et plus léger.

Les plus/avantages:
Très léger, très agréable à l'utilisation.

Les moins/inconvénients:
La documentation n'est pas très complète, c'est son principale inconvénient.

Vers quels autres tookits pensez-vous évoluer dans le futur:
Je ne pense pas changer pour l'instant.

Comment vous êtes-vous formé ou avez-vous été formé sur ce tookit:
En autodidacte et par des tutos.

Est-ce une utilisation amateur, professionnelle ou éducative:
Une utilisation amateur.

Avez-vous fait votre choix pour raison professionnelle, personnelle ou par plaisir:
Pour raison personnel

Avec quels langages utilisez-vous ces toolkits:
Avec le C++ et le Vala.

Quelles autres toolkits avez-vous utilisé, pourquoi, dans quel cadre ; quels sont les avantages et inconvénients des uns sur les autres:
J'utilise Qt en C++ qui est plus complet qui GTK, sa documentation est parfaite, mais Qt n'est pas assez standard à mon goût et pas assez "jolie" pour du C++.

Conclusion:
Vive Gtk
Avatar de air-dex air-dex - Membre émérite http://www.developpez.com
le 16/03/2011 à 22:26
GTK pour l'indépendance vis à vis du langage.

- Pourquoi ce choix ?
Je ne connaissais que le C à l'époque et GTK est pour moi le seul toolkit graphique en C (je ne connaissais pas Motif avant de l'avoir vu dans ce sondage).

- Les plus/avantages
  • Existe dans un langage non objet.
  • Syntaxe similaire de langage en langage.


- Les moins/inconvénients
  • Documentation en français inexistante.
  • Trop centré sur Linux.


- Quels projets réalisez-vous avec et pourquoi ?
Projets personnels et dans le cadre de mes études.

- Vers quels autres tookits pensez-vous évoluer dans le futur ?
Swing (je baigne déjà dedans) & Qt.

- Comment vous êtes-vous formé ou avez-vous été formé sur ce toolkit ?
Avec des tutoriels, notamment celui-ci. J'ai également beaucoup regardé la documentation officielle.

- Est-ce une utilisation amateur, professionnelle ou éducative ?
C'est une utilisation amateur que j'ai pu réutiliser dans le cadre de mes études (avec succès ).

- Avez-vous fait votre choix pour raison professionnelle, personnelle ou par plaisir ?
C'était une raison personnelle.

- Avec quels langages utilisez-vous ces toolkits ?
En C, of course ! Mais je l'ai également utilisé en C++ et testé en C# avec Mono. C'est pourquoi j'ai choisi Gtk. Je n'ai pas encore utilisé les autres toolkits indépendamment du langage.

- Quelles autres toolkits avez-vous utilisé, pourquoi, dans quel cadre ; quels sont les avantages et inconvénients des uns sur les autres ?
  • Swing : dans le cadre de mes études et même plus.
  • Qt : dans le cadre de mes études et à un niveau plus personnel, en remplacement de GTK que je trouve trop centré sur Linux.
  • WinForms : à l'occasion de mes études. Intéressant mais j'ai l'image du "C++ by Windows" qui me vient quand je pense à WinForms. Et ça me bloque.


- Conclusion
GTK pour l'instant, tout en sachant que ça changera très bientôt.
Avatar de psykoprof psykoprof - Membre du Club http://www.developpez.com
le 17/03/2011 à 13:06
Citation Envoyé par gwinyam  Voir le message
Psykoprof : les MFC, c'est une technologie tellement ancienne... heureusement que les technos actuelles les dépassent, ça serait malheureux tout de même.

C'est sûr. Mais dans l'enseignement, il y a des collègues qui ont du mal à lâcher leurs habitudes et n'essaient pas forcement de s'ouvrir à des choses plus récentes.

J'essaie de les convertir mais ce n'est pas simple.

Enfin bon c'est un débat à part.....

A plus.
Avatar de gwinyam gwinyam - Membre chevronné http://www.developpez.com
le 17/03/2011 à 13:46
Citation Envoyé par psykoprof  Voir le message
C'est sûr. Mais dans l'enseignement, il y a des collègues qui ont du mal à lâcher leurs habitudes et n'essaient pas forcement de s'ouvrir à des choses plus récentes.

J'essaie de les convertir mais ce n'est pas simple.

Enfin bon c'est un débat à part.....

Certes. Je l'ai moi-même étudié il y a 2 ans. Ceci dit, tes collègues ne sont pas totalement dans le tort. Apprendre les dernières technos, pas besoin d'en débattre, on sait tous que c'est important et on est tous, je l'espère, d'accord là dessus.
Par contre, apprendre les MFC, ça n'a pas été un mal, parce que ça permet de mettre les mains dans le camboui et de comprendre comment ça marche réellement et donc arrêter de travailler sur des idées sans fondement.

Je crois qu'on devrait proposer ce débat séparément, t'as raison.
Offres d'emploi IT
Ingénieur embarqué linux expérimenté h/f
AIUTA Conseil & Recruteme,t - Ile de France - Paris (75000)
Développeur c++ / qt pour des applications en analyse génétique (h/f)
STILLA TECHNOLOGIES - Ile de France - Villejuif (94800)
Visualisation données satellites H/F
Atos - Midi Pyrénées - Toulouse (31000)

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -