URL: https://linuxfr.org/forums/programmation-python/posts/quelle-arborescence-pour-un-projet-python-qt Title: Quelle arborescence pour un projet Python Qt ? Authors: jihele Date: 2015年03月30日T11:03:48+02:00 License: CC By-SA Tags: python, qt et arborescence Score: 1 Bonjour. Je travaille sur une application PyQt (python + Qt) et je me demande comment organiser mon arborescence de fichiers. J'ai essayé de m'inspirer de projets libres, mais je n'ai pas trouvé la solution ultime. J'ai l'impression que chacun fait un peu à sa sauce. Pour l'instant, je fais ceci:> mon_logiciel/ .git/ src/ mon_logiciel.py mon_logiciel/ mainwindow.py congif.py status_bar.py data.py mplwidget.py ... datareader/ ... dataplotter/ ... resources/ ui/ mainwindow.ui datareader/ ... dataplotter/ ... images/ i18n/ ts/ mon_logiciel_fr.ts tests/ doc/ examples/ tools/ i18n/ update_ts.py update_qm.py pylint/ ... packages/ win/ .gitignore README.md LICENSE.txt VERSION TODO.txt - mon_logiciel.py ne contient que du code après le if __name__ == "__main__". Il charge les traductions, instancie une MainWindow, et lance l'application. C'est donc par lui que je lance le logiciel. - mainwindow.py définit la classe MainWindow(QtGui.QtMainWindow) qui instancie la classe qui stocke les données (définie dans data.py) et crée la GUI, connecte les signaux, etc. - datareader/ contient des classes de lecture de données, qui servent à lire un format de fichier et stocker le contenu dans l'instance de classe de données attribut de MainWindow. L'utilisateur choisit un fichier via la GUI et la bonne classe est utilisée pour le parser selon son type. - dataplotter/ contient des classes de grahiques établis à partir de ces données. Chaque fichier crée une classe de graphique. Au démarrage, chaque grapheur est instancié dans un nouvel onglet de la GUI. Je trouve logique d'appeler mon_logiciel en exécutant mon_logiciel.py, et pas main.py, par exemple. Je ne sais pas comment appeler le répertoire contenant les fichiers .py, donc je l'appelle mon_logiciel/ aussi. Je ne crois pas que ce soit le meilleur agencement possible. Un indice, pylint se plaint d'imports circulaires à cause de mon_logiciel.py à côté de mon_logiciel/. Peut-être que mon problème est plus profond: mauvaise séparation code/GUI. Je n'ai pas trouvé de doc qui fasse référence, donc vos suggestions ou pointeurs sont les bienvenus. Merci.

AltStyle によって変換されたページ (->オリジナル) /