IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Discussion :

Qt : un langage de 4e génération ? [Débat]


Sujet :

Qt

Vue hybride

crazy_inf Peut-on considérer Qt comme... 22/02/2010, 16h25
gbdivers Qt est-il un language ? Je... 22/02/2010, 17h27
Jeromnimo Je rejoins le post précédent,... 22/02/2010, 17h32
johnlamericain En effet, Qt n'est pas un... 22/02/2010, 17h49
crazy_inf D'abord merci pour vos... 25/02/2010, 10h18
johnlamericain Pourquoi veux-tu que Qt... 25/02/2010, 10h58
atomicJo Selon moi, ça ressemble plus... 22/02/2010, 19h36
yan +1, c'est un framework que tu... 22/02/2010, 21h27
gbdivers Il ne faut pas hésiter à... 25/02/2010, 11h06
dourouc05 On parle bien ici du couple... 25/02/2010, 19h19
bretus Bonjour, Avec la... 25/02/2010, 20h45
Invité Je crois que l'on peut... 26/02/2010, 10h12
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Inscrit en
    Mai 2008
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 72
    Par défaut
    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 ?

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Qt est-il un language ?

    Je dirais non

    Par contre, je dirais que le QML semble etre un language de 4eme génération selon ta définition (un peu à vue de nez, je ne connais très mal QML)

  3. #3
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Avril 2007
    Messages
    47
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 47
    Par défaut
    Je rejoins le post précédent, Qt n'est pas un langage, c'est le C++ / java le langage utilisé... qui ne sont pas des langages de 4ème génération

  4. #4
    Rédacteur

    Avatar de johnlamericain
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2004
    Messages
    3 742
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 3 742
    Par défaut
    En effet, Qt n'est pas un langage mais bien une bibliothèque C++. L'ensemble des fonctionnalités qu'elle embarque (EDI, Tools, Designer...) fait de cette bibliothèque un Framework complet téléchargeable et utilisable facilement.

  5. #5
    Membre confirmé

    Inscrit en
    Mai 2008
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 72
    Par défaut
    Citation Envoyé par johnlamericain Voir le message
    En effet, Qt n'est pas un langage mais bien une bibliothèque C++. L'ensemble des fonctionnalités qu'elle embarque (EDI, Tools, Designer...) fait de cette bibliothèque un Framework complet téléchargeable et utilisable facilement.
    D'abord merci pour vos réponses...
    Donc, je reformule ma question d'une autre façon en disant: Que-ce qu'il lui (Qt) manque pour devenir un langage?

    Citation Envoyé par yan Voir le message
    Qt fournie ce qu'il faut(event loop,signal/slot,...). Mais je comprend pas la partie en gras
    Merci pour ta réponse.
    En fait, c'est une définition que j'ai dû avoir par le biais du site Wikipedia et c'est presque la même avec celle qui nous a été fournie en classe
    En tout les cas, la phrase celle où t'as cité en gras je n'arrive pas à la piger aussi...mais on peut toujours éssayer de comprendre, on sait que GUI faites en Qt ont une interaction implicite avec le système d'éxploitation (avec les thèmes du OS plutôt )...j'ai dit une bêtise là?

  6. #6
    Rédacteur

    Avatar de johnlamericain
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2004
    Messages
    3 742
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 3 742
    Par défaut
    Citation Envoyé par crazy_inf Voir le message
    Donc, je reformule ma question d'une autre façon en disant: Que-ce qu'il lui (Qt) manque pour devenir un langage?
    Pourquoi veux-tu que Qt devienne un langage ?
    Je ne pense pas qu'un framework peut devenir un langage, tu as des exemples contraires ?
    J'irais même plus loin de disant que je ne pense pas qu'un framework à l'intention de devenir un langage (ni la prétention).

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Par défaut
    Citation Envoyé par crazy_inf Voir le message

    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.
    Selon moi, ça ressemble plus à la description d'un framework que d'un langage

  8. #8
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    +1, c'est un framework que tu décrit
    * un langage déclaratif de manipulation de données ;
    c'est à dire?

    * un langage impératif simple (procédural, fonctionnel ou orienté objet) ;
    Qt est écrit en C++

    * un langage de description d'interfaces graphiques avec idéalement un éditeur d'interface ;
    Qt fournie ce qu'il faut

    * un langage de description de rapports imprimables avec idéalement un éditeur de rapport ;
    Peut tu donner un exemple. Pour l'impression, Qt ne fournie pas d'éditeur.

    * un langage de programmation événementielle avec idéalement une liaison entre le code et l'interface graphique.
    Qt fournie ce qu'il faut(event loop,signal/slot,...). Mais je comprend pas la partie en gras

  9. #9
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Par défaut
    Il ne faut pas hésiter à cliquer sur les liens

    Un L4G ou langage de quatrième génération est un langage de programmation...
    Un langage de programmation est un langage informatique...
    On appelle langage informatique un langage formel...
    on désigne par langage formel un mode d'expression (...) d'un ensemble de mots (...) d'une sémantique.
    Pour Qt, la sémantique et les "mots" de base ne sont pas définit par Qt mais par C++. C'est donc C++ le language.

    Pour faire un analogie avec la "vraie vie", ton manuel de grammaire et ton dictionnaire larousse forment le langage de base (C++ ici) et ton cours d'informatique et ton dictionnaire des termes informatiques constituent un complément (Qt ici)

    Donc pour répondre à ta question "Que-ce qu'il lui (Qt) manque pour devenir un langage?", je dirais... un langage !

    La question est alors : peut-on considérer C++/Qt comme un langage de 4eme génération ?
    Pareil, je ne pense pas. Qt peut être utiliser avec d'autres langages.

    je ne pense pas qu'un framework à l'intention de devenir un langage
    J'irai même plus loin : ce n'est pas forcement intéressant pour un framework de devenir un langage. Beaucoup de "gros" framework peuvent être utilisés par plusieurs langage, ce qui facilite son utilisation.

  10. #10
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 771
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2008
    Messages : 26 771
    Par défaut
    Citation Envoyé par gbdivers Voir le message
    La question est alors : peut-on considérer C++/Qt comme un langage de 4eme génération ?
    Pareil, je ne pense pas. Qt peut être utiliser avec d'autres langages.
    On parle bien ici du couple C++/Qt, en faisant totale abstraction de tous les autres bindings existants. À ce titre, on peut dire que majoritairement oui :
    - C++ fait de l'impératif objet ;
    - Qt fournit des GUI, que l'on peut déclarer avec QML, avec un éditeur graphique pour QML ;
    - Pas de rapports de base à ma connaissance, mais on peut sans problème créer les classes nécessaires et les imprimer (mais est-ce le but original ? pas du tout !) ;
    - Les évènements : on pourrait considérer les signaux-slots comme un équivalent, donc oui.

    Par contre, le langage déclaratif de manipulation de données, je ne vois pas trop ce qu'on veut dire par là.

    Citation Envoyé par gbdivers Voir le message
    J'irai même plus loin : ce n'est pas forcement intéressant pour un framework de devenir un langage. Beaucoup de "gros" framework peuvent être utilisés par plusieurs langage, ce qui facilite son utilisation.
    C'est pour ça qu'on a Vala pour la GLib, et, par extension, GTK. Il s'agit d'un langage un peu bizarre, je dirais : c'est une sorte de surcouche du C, qui permet de faire de l'objet sans devoir aller chercher loin dans le langage. Ça permet d'avoir un langage propre, le Vala, et de garder exactement la même API, sans devoir se priver des bindings. Qu'est-ce qui empêcherait PyQt de continuer à binder Qt s'il change de langage ?

    Qu'est-ce qui pourrait pousser Qt à changer de langage, sans penser dans un premier temps à tous les problèmes engendrés par un tel changement ?
    - La possibilité d'avoir un support équivalent sur toutes les plateformes (des parties de code pourraient être franchement ismpplifiées en supprimant le support d'anciens compilateurs, d'anciens frameworks...) ;
    - Le contrôle du langage : pas besoin de tricher pour inclure une nouvelle structure comme le foreach, on pourrait faire très exactement la même chose que le PHP (càd avoir un mot-clé as, qui est bien plus explicite qu'une virgule dans ce cas précis) ;
    - L'intégration parfaite : pour écrire dans une sortie standard C++, il faut commencer par surcharger des fonctions pour qu'elles prennent en entrée les types Qt...
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  11. #11
    Membre émérite
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2009
    Messages
    552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2009
    Messages : 552
    Par défaut
    Bonjour,

    Citation Envoyé par gbdivers Voir le message
    Donc pour répondre à ta question "Que-ce qu'il lui (Qt) manque pour devenir un langage?", je dirais... un langage !
    Avec la puissance du pré-compilateur, la question se pose au moins de savoir si c'est une extension du langage C++.

    qmake transforme quand même des .ui, des bon vieux xml sans c++ en fichier c++ ( traduction de code ).

    S'adjoint à ça l'ajout de mot clef dans le langage c++ : slot et signal, ainsi que Q_OBJECT qui est plus qu'une macro.

    Alors, langage de 4ième génération ou pas, ce n'est pas seulement un ensemble de classe et de bibliothèque en C++... Il y a quand même une sur-couche pour mettre en place des mécanismes qui serait un peu lourd avec la "grammaire" actuelle du C++...

  12. #12
    Invité
    Invité(e)
    Par défaut
    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.

    Qt c'est pareil.

    Il y a un éditeur de code un peu comme l'EDI de Delphi et les librairies un peu à la manière des VCL, ...
    Le langage généralement utilisé étant le C++, comme le Pascal Objet en Delphi.

  13. #13
    Membre Expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Par défaut
    La définition de l'article wikipedia en anglais est plus pertinente je trouve :

    A fourth-generation programming language (1970s-1990) (abbreviated 4GL) is a programming language or programming environment designed with a specific purpose in mind, such as the development of commercial business software
    La question de crazy_inf se révèle donc pertinente, puisqu'un environnment de programmation peut répondre à la définition de langage de 4ème génération.

    C'est une définition à double tranchant. En effet, Qt a bien un but spécifique : le développement d'interface graphiques. Mais ce n'est pas un aspect métier de l'application, alors qu'un langage de 4ème génération est conçu pour fournir aussi (et surtout) les outils pour la partie métier. Je pense donc que QT ne peut pas être considéré comme langage de 4ème génération, car il ne peut pas servir de "socle" métier.

  14. #14
    Membre confirmé

    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Billets dans le blog
    1
    Par défaut Loin de vouloir partir en troll, mais....
    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 !

Discussions similaires

  1. Langage POO pour génération de statistiques
    Par boon31 dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 07/08/2007, 18h18
  2. Langage POO pour génération de statistiques
    Par boon31 dans le forum Langage
    Réponses: 5
    Dernier message: 26/07/2007, 11h06
  3. Algo/pascal : Génération d'un langage correspondant à une expression régulière
    Par Invité dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 27/02/2007, 12h17
  4. [TPC][DBGEN][langage C] Génération de données
    Par Xavinou dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 20/05/2005, 21h37
  5. langage de n° génération
    Par nako dans le forum Langages de programmation
    Réponses: 15
    Dernier message: 12/04/2005, 11h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo