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

PyQt Python Discussion :

Commencer avec PySide ou PyQt4 ?


Sujet :

PyQt Python

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 98
    Par défaut Commencer avec PySide ou PyQt4 ?
    Bonjour, je programme actuellement sous python 2.7 et essentiellement sous windows mais aussi sous unbutu.
    Je voudrais commencer a apprendre une autre bibliothèque graphique que TKinter et mon choix s'est porté sur QT
    Dans mes recherches, je suis tombé sur des tutto pyqt4 et pyside, si j'ai bien compris pyside est le plus récent ?
    Je voudrais savoir quelle différence il y a entre pyqt4 et pyside, et dans mon cas quelle serait le meilleur choix !
    J'ai commencer sous python 3 et j'ai du repasser sous la version 2 par souci de compatibilité avec la plus part des libs, je ne voudrais pas refaire la meme erreur.
    Est ce qu'il y a de grosses différences de syntaxe entre les 2 ?
    Je veut pouvoir utiliser py2exe pour "compiler" mes applications, et par la suite utiliser qtdesigner pour créer des interfaces graphiques plus rapidement.
    Merci de votre aide !

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    A mon avis, il y a entre PyQt4 et PySide 2 grandes différences:

    - l'ancienneté: PyQt4 est mature, PySide est très très jeune (version beta)

    - la licence: PyQt4 a une licence plus restreinte que Qt, contrairement à PySide.

    Comme PySide est dans le giron de Nokia (qui a aussi Qt), on peut penser qu'il est le produit du futur. En contrepartie, sa jeunesse fait qu'on passera du temps avec les inévitables bugs.

    Dernier point: il semble que ces 2 produits soient très proches vis à vis de leur utilisation. Ce qui fait que l'apprentissage sur PyQt4 ne sera pas perdu en passant sur PySide quand il sera mûr.


    En résumé: tout dépend donc du projet qu'on a, et de ses délais. En ce qui me concerne, je surveille avec intérêt l'évolution de PySide, mais j'utilise PyQt4 parce que mes programmes doivent absolument fonctionner dans les prochaines semaines. Le jour où PySide sera d'une maturité équivalente à PyQt4, je passerai probablement à PySide pour des questions de licence.

    Tyrtamos

    Edit: si tu travailles en multiplateforme (au moins Windows + Linux), pense aussi à cx_freeze en remplacement de py2exe. En effet, le même script setup.py de cx_freeze peut être utilisé pour faire la même chose que py2exe, mais dans les 2 plateformes. Et sur Windows, tu peux ajouter innosetup qui permet d'installer/désinstaller le résultat de cx_freeze ou py2exe comme n'importe quel programme Windows.

    Et QtDesigner permet avec un peu de pratique de dessiner des fenêtres très complexes qu'on aurait beaucoup de mal à dessiner avec un simple éditeur de texte.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 98
    Par défaut
    Merci pour toutes ces infos !
    Je vais utiliser PyQt4 pour le moment alors ! @ +++

  4. #4
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Effectivement la plus grosse différence réside dans la licence. GPL pour PyQT et LGPL pour PySide.

    Concernant l'apprentissage de l'un ou de l'autre, comme l'a souligné tyrtamos, les deux bindings étant très proches, si tu sais utiliser l'un tu n'auras aucun mal à utiliser l'autre. J'utilise les deux et actuellement les seuls vraies différences restrictives que j'ai notées sont les imports (normal tu me diras ^^) et quelques décorateurs.

    Mais à part ça, c'est nikel.

    Un autre point important est effectivement la jeunesse de PySide et de ce fait les quelques bogues que l'on peut rencontrer, même si très franchement j'en ai pas croisé des masses pour le moment (un seul à vrai dire)
    Par contre je suis de l'avis de tyrtamos concernant le futur, PySide risque bien de dépasser PyQt une fois la version 1 stable sortie (d'ici 3 à 4 semaines normalement).

    A mon avis, te faire les dents sur PyQt n'est pas une mauvaise idée et dans un petit mois je pense que tu pourras constater facilement par toi même que PySide ne diffère pas tant que ça.

    PS: Juste histoire de me faire un peu de pub ^^, j'ai écrit un petit tutoriel sur PySide. Si tu changes les imports et peut être aussi quelques petits autres points, tu devrais facilement t'en servir pour PyQt.

    Bonne continuation.
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  5. #5
    Membre éprouvé

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Par défaut
    Bonjour,
    voici mon avis.
    1. Actuellement, je reste sur PyQt car il y a une version pour Python 3.
    2. Le problème des licences est à mon avis un faux problème pour des programmes amateurs gratuits. J'attends quelques précisions si je fais fausse route.
    3. PySide semble vouloir s'occuper des utilisateurs Mac, ce qui me plait beaucoup pour les éventuels utilisateurs de mon projet actuel. Il y a un installateur dmg "click-and-install". Pour le moment, j'ai dû compilé PyQt pour Python 3 en faisant appel à quelques commandes bien mystiques.
    4. Pour finir, Mark Summerfield va proposer l'été prochain, normalement, une version Pyqt-PySide de son livre avec des nouveautés. Ceci sous-entend que le passage de l'un à l'autre ne devrait pas être trop violent.

    Le choix de PyQt est à mon avis bon étant donné la foule de choses prises en compte : animation, communication JavaScript-Python, ...etc.

  6. #6
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Billets dans le blog
    15
    Par défaut
    Je n'ai volontairement pas évoqué le cas de Python 3, puisque darioo2 en vient qu'à priori il ne veut pas forcément y retourner de suite. Cela n'empêche que c'est un vrai "problème" avec PySide pour le moment.

    Pour les licences, je ne suis pas assez caler pour donner un avis très poussé... je sais juste que l'une est plus restrictive que l'autre.

    Merci de l'info concernant Mark Summerfield... moi qui voulais acheter le livre, je vais attendre un peu
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  7. #7
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    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 772
    Par défaut
    Citation Envoyé par rambc Voir le message
    Le problème des licences est à mon avis un faux problème pour des programmes amateurs gratuits. J'attends quelques précisions si je fais fausse route.
    Actuellement, PyQt est disponible en GPL et en licence commerciale. Tant qu'on fait un projet open source, ce n'est généralement pas trop problématique.

    L'énorme problème de la GPL (et son seul problème, sa seule caractéristique, son essence même, mais cela reste un avis personnel) est que c'est une licence contaminante. Exactement comme la peste. Tu utilises une bibliothèque sous GPL, ton programme devra être sous GPL. Tu utilises des bibliothèques qui ne sont pas compatibles GPL ? Tant pis pour toi, tu devras faire sans. Tour à tour, tous les projets qui voudront se baser sur ta bibliothèque devront être en GPL.

    C'est cela que je hais absolument dans cette licence : tu n'as plus de choix de licence (tu as le choix entre GPL 2 et GPL 3... waw, étonnant, il aurait été dur de faire mieux). Pour du libre, c'est tout sauf libre. Mais c'est un avis très personnel, tout peut se défendre ici.



    Aussi, si PySide s'occupe des macqueux, ce n'est pas son objectif principal, il a d'abord été prévu pour toutes les plateformes mobiles (principalement MeeGo). C'est pour ça qu'on retrouve un binding pour Qt Mobility, mais pas pour Qwt, par exemple.
    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 !

  8. #8
    Membre éprouvé

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Par défaut
    Citation Envoyé par dourouc05 Voir le message
    Actuellement, PyQt est disponible en GPL et en licence commerciale. Tant qu'on fait un projet open source, ce n'est généralement pas trop problématique.
    On est d'accord.

    Citation Envoyé par dourouc05 Voir le message
    L'énorme problème de la GPL (et son seul problème, sa seule caractéristique, son essence même, mais cela reste un avis personnel) est que c'est une licence contaminante. Exactement comme la peste. Tu utilises une bibliothèque sous GPL, ton programme devra être sous GPL. Tu utilises des bibliothèques qui ne sont pas compatibles GPL ? Tant pis pour toi, tu devras faire sans. Tour à tour, tous les projets qui voudront se baser sur ta bibliothèque devront être en GPL.
    Ceci permet-il de protéger le fait que ton logiciel ne serve pas à gagner de l'argent sur ton dos, sans retour ?

    Citation Envoyé par dourouc05 Voir le message
    Aussi, si PySide s'occupe des macqueux, ce n'est pas son objectif principal, il a d'abord été prévu pour toutes les plateformes mobiles (principalement MeeGo). C'est pour ça qu'on retrouve un binding pour Qt Mobility, mais pas pour Qwt, par exemple.
    Le côté tout OS standard est primordial pour moi, et Mac n'est pas minoritaire...

  9. #9
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2008
    Messages
    26 772
    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 772
    Par défaut
    Citation Envoyé par rambc Voir le message
    Ceci permet-il de protéger le fait que ton logiciel ne serve pas à gagner de l'argent sur ton dos, sans retour ?
    Pas à ma connaissance, même si http://en.wikipedia.org/wiki/GNU_Gen...mercialization. Pour ça, tu peux regarder du côté des licences CC : http://creativecommons.org/licenses/by-nc/3.0/. Si tu veux utiliser PyQt et donc la GPL, tu as cette page de Wikipedia qui pourrait t'aider : http://en.wikipedia.org/wiki/List_of...tware_licenses. Plus de détails : http://www.gnu.org/licenses/quick-guide-gplv3.html. En regardant le contenu http://www.gnu.org/licenses/gpl-3.0-standalone.html et http://www.gnu.org/licenses/old-licenses/gpl-2.0.html, je n'ai rien vu de précis sur le sujet.

    Mais c'est franchement commencer à chipoter que d'essayer de comprendre ce que l'on peut faire avec ces licences... (ce serait bien mieux d'avoir deux licences : open source et non open source ; ça serait très manichéen mais compréhensible par tous).
    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 !

Discussions similaires

  1. Comment commencer avec Informix ?
    Par ferradji dans le forum Informix
    Réponses: 3
    Dernier message: 16/06/2014, 16h33
  2. Aide: commencer avec le java
    Par hardworker dans le forum Windows
    Réponses: 2
    Dernier message: 03/02/2007, 12h08
  3. [debutant] Comment commencer avec Perl?
    Par Murieyaya dans le forum Langage
    Réponses: 3
    Dernier message: 20/12/2005, 15h58
  4. [Débutant]Commencer avec les BDD
    Par Pill_S dans le forum Débuter
    Réponses: 6
    Dernier message: 29/06/2004, 14h02

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