Qt : peut-il être considéré comme un langage de 4e génération ?

Le , par crazy_inf, Membre régulier
Peut-on considérer Qt comme un langage de 4e génération?

Qu'appelle-t-on un langage de "4e génération" ?

C'est un langage qui doit offrir :
  • un langage déclaratif de manipulation de données ;
  • un langage impératif simple (procédural, fonctionnel ou orienté objet) ;
  • un langage de description d'interfaces graphiques avec idéalement un éditeur d'interface ;
  • un langage de description de rapports imprimables avec idéalement un éditeur de rapport ;
  • un langage de programmation événementielle avec idéalement une liaison entre le code et l'interface graphique.
Peut-on considérer Qt comme un tel langage ?


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


 Poster une réponse

Avatar de Shaidak Shaidak - Membre actif https://www.developpez.com
le 03/03/2010 à 13:31
Citation Envoyé par gbdivers  Voir le message
{...}Je ne vois pas très bien à quel moment l'argument "L4G" intervient.

A aucun moment je n'en voie pas très bien l'intérêt non plus, c'est plus de la curiosité qu'autre chose à mon sens.
Pour ce qui est du découpage, c'est sans doute pour mieux identifier le niveau des langages, leur degré de complexité ou autre, enfin, je suppose. Ceci étant j'admets ne m'être jamais posé la question concernant les langages que j'utilise, dès lors qu'il répondent à mes besoins, ça me va .
Avatar de dlewin dlewin - Membre averti https://www.developpez.com
le 03/03/2010 à 14:45
Citation Envoyé par Ehma  Voir le message
Je crois que l'on peut comparer ça à Delphi : Delphi n'est pas un langage, mais un environnent de développement dont le langage est le Pascal Objet.

Pas d'accord, si je m'en rappelle bien Borland à racheté les licences pour faire évoluer le Pascal vers de l'objet, ce qui n'était pas implémenté à la base.

cf : [ame]http://fr.wikipedia.org/wiki/CodeGear_Delphi[/ame]

Qt c'est pareil (...). Le langage généralement utilisé étant le C++

Toujours pas d'accord, comme décrit plus autre QT est un (super!) framework (cadriciel) ou ensemble de librairies mais QT est tellement novateur qu'il me semble impossible de le caser dans une quelconque catégorie, et encore moins language.

D'ailleurs j'attends un bon Maemo pour faire du QT dessus !
Avatar de huit_six huit_six - Membre actif https://www.developpez.com
le 03/03/2010 à 15:46
Citation Envoyé par yan  Voir le message
Qt utilise plutôt d'autre moyen :
  • Javascript avec le moteur de webkit
  • le futur qml.

Pour javascript, je ne comprends ce que tu veux dire. Pour moi c'est comme si on disait que java est étendu par XML parce qu'il est capable de le parser... Mais je répète que je ne pense pas avoir compris ce que tu voulais dire.

Et concernant QML, je ne sais pas du tout ce que c'est ! pourrais-tu m'en dire plus ? Si mes recherches dur dvp on été fructueuses, j'en comprends que c'est un peu l'équivalent de glade pour gnome ?

Gtk+vala, je trouve que c'est assez formidable comme évolution, c'est incrémental !
1 On crée un langage 1, performant et largement déployé (le langage C)
2 Un ensemble de bibliothèques se développe dessus et finissent par constituer un framework puissant et reconnu
3 On élabore un langage ayant pour visée l'intégration du framework et la facilitation de son utilisation, tout en gardant les librairies du langage 1 et en passant par son intermédiaire pour conserver les performances.

En fait, on pourrait imaginer qu'à l'avenir, les étapes 2 et 3 se répètent.

Avantages :
* Plus de perte de compatibilité au changement de langage.
* l'amélioration d'une couche de l'édifice profite à toutes les couches supérieures.
* Évolution des langages dirigée par les besoins rencontrés (grâce aux frameworks)

Franchement, je trouve que c'est un modèle autrement plus constructif que le :
"Ce langage X ne m'apporte pas TRUC, alors je crée un langage Y"...
Avatar de yan yan - Rédacteur https://www.developpez.com
le 03/03/2010 à 15:56
Pour javascript, je ne comprends ce que tu veux dire. Pour moi c'est comme si on disait que java est étendu par XML parce qu'il est capable de le parser... Mais je répète que je ne pense pas avoir compris ce que tu voulais dire.

js est le langage de script de Qt. Il permet l'interaction dans les deuxsens.

Citation Envoyé par huit_six  Voir le message
Et concernant QML, je ne sais pas du tout ce que c'est ! pourrais-tu m'en dire plus ? Si mes recherches dur dvp on été fructueuses, j'en comprends que c'est un peu l'équivalent de glade pour gnome ?

y as un topic
http://www.developpez.net/forums/d81...eclarative-ui/
c'est plutôt un équivalent de xaml.

En faite ce qu'apporte vala me semble être l'équivalent de ce que l'on pourrai faire avec js et qml; Mais comme je sais pas trop ce qu'est réellement vala, je suis peut être à côté de la plaque...
Avatar de yan yan - Rédacteur https://www.developpez.com
le 03/03/2010 à 15:57
Citation Envoyé par dlewin  Voir le message
D'ailleurs j'attends un bon Maemo pour faire du QT dessus !

ha non c'est MeeGo maintenant
http://blog.qt.nokia.com/2010/02/15/...-qt-community/
Avatar de dlewin dlewin - Membre averti https://www.developpez.com
le 03/03/2010 à 16:07
Citation Envoyé par yan  Voir le message

exact Intel s'est invité à la "danse".

J'en profite pour demander s'il existe
une liste des appareils qui accepter du QT (Archos, téléphone (n900), Tablettes, etc) ?
Avatar de dourouc05 dourouc05 - Responsable Qt https://www.developpez.com
le 03/03/2010 à 16:47
Citation Envoyé par yan  Voir le message
En faite ce qu'apporte vala me semble être l'équivalent de ce que l'on pourrai faire avec js et qml; Mais comme je sais pas trop ce qu'est réellement vala, je suis peut être à côté de la plaque...


Vala, c'est vraiment un nouveau langage développé expressément pour profiter de toutes les subtilités de GTK+, avec une syntaxe adaptée, etc. Ce langage est aussi fonctionnel que le C, que le C#, que le C++ et que tous les autres (aussi fonctionnel que le BF, mais sûrement plus lisible).

En comparaison, JS est un langage préexistant, rien n'a été fait pour adapter sa syntaxe à l'environnement Qt ; QML est un nouveau langage, mais il ne sert que pour les interfaces graphiques. Vala, c'est mieux : une syntaxe adaptée, avec laquelle on peut tout faire.
Avatar de huit_six huit_six - Membre actif https://www.developpez.com
le 03/03/2010 à 17:00
Je rajouterai, c'est un langage qui a été créé et optimisé pour l'utilisation d'un framework existant, qui devient ainsi la base du langage. Ce qui rejoint la question de Qt en tant que langage...

[Edit] Coquilles
Avatar de dourouc05 dourouc05 - Responsable Qt https://www.developpez.com
le 03/03/2010 à 20:32
On peut ainsi se demander : Qt a-t-il besoin d'un tel langage ? Si GTK+ a proposé Vala, c'est surtout parce que le C ne supportait pas simplement le paradigme objet, et que les développeurs ne voulaient pas migrer vers le C# ou Java, à ce que j'en ai lu. Qt a-t-il ces problèmes ? Non : il est à la base développé dans un langage objet. Par contre, il est obligé d'étendre ce langage (notamment avec les signaux et les slots, qui nécessitent le moc). Ce nouveau langage, n'est-il donc pas déjà en application ? Il nécessite un compilateur (le moc) qui transforme le code source en une patée digérable pour un compilateur C++. Du côté de Vala, on a aussi un compilateur qui génère du C, qui passe ensuite à GCC ou à un autre compilo.
Avatar de huit_six huit_six - Membre actif https://www.developpez.com
le 04/03/2010 à 19:29
Je ne sais pas vraiment ce qu'est le moc, mais ce que je voulais dire c'est que la succession C/Gtk/Vala est intéressante du point de vue de l'évolution des langages. Et comme on est à peu près sûrs que C++ et Qt vont évoluer, ça me semble être une piste intéressante que le couple pourrait suivre.
Avatar de thierry.chich thierry.chich - Membre éclairé https://www.developpez.com
le 22/05/2010 à 15:13
Citation Envoyé par dourouc05  Voir le message
On peut ainsi se demander : Qt a-t-il besoin d'un tel langage ? Si GTK+ a proposé Vala, c'est surtout parce que le C ne supportait pas simplement le paradigme objet, et que les développeurs ne voulaient pas migrer vers le C# ou Java, à ce que j'en ai lu. Qt a-t-il ces problèmes ? Non : il est à la base développé dans un langage objet. Par contre, il est obligé d'étendre ce langage (notamment avec les signaux et les slots, qui nécessitent le moc). Ce nouveau langage, n'est-il donc pas déjà en application ? Il nécessite un compilateur (le moc) qui transforme le code source en une patée digérable pour un compilateur C++. Du côté de Vala, on a aussi un compilateur qui génère du C, qui passe ensuite à GCC ou à un autre compilo.

C'est tout à fait ça. En fait QT est bien une forme d'extension du C++. C'est d'ailleurs une excellente extension qui ajoute des concepts tout à fait pratiques à l'utilisation.
Reste la question de savoir si vraiment ces questions sémantiques sont très intéressantes en tant que telles ...
Offres d'emploi IT
Ingénieur développement fpga (traitement vidéo) H/F
Safran - Ile de France - 100 rue de Paris 91300 MASSY
Ingénieur conception en électronique de puissance H/F
Safran - Ile de France - Moissy-Cramayel (77550)
Ingénieur intégration, validation, qualification du système de drone H/F
Safran - Ile de France - Éragny (95610)

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