2011-05-18 5 views
7

Je travaille actuellement sur le projet final de ma classe de programmation. Nous l'écrivons dans Python 3.1, et je fais l'interface graphique. Le chef de mon équipe veut faire l'ensemble du projet en 3.1, mais la plupart des addons de pyGame (comme pyConsole) me posent des problèmes de compatibilité. Donc, ma question est, est-ce que je peux écrire mon frontend en 2.5 et ensuite l'accrocher au moteur écrit en 3.1? Merci de votre aide!Utilisation simultanée de Python 3.1 et 2.5

+4

2,5? Quel est le problème avec 26 et 2.7? :-) –

Répondre

6

Pour être honnête, c'est probablement plus de problèmes que ça en vaut la peine.

Votre meilleur pari est de se réunir et de faire une liste des addons que vous souhaitez utiliser et s'ils sont compatibles ou non avec 3.1. Puis décidez si vous pouvez vivre sans les incompatibles. Si vous ne le pouvez pas, faites le projet en 2.5, sinon passez en 3.1 et disposez d'un "Plan B" pour les addons que vous ne pouvez pas utiliser.

Si vous êtes prudent, vous pouvez rendre la commutation de 2 à 3 relativement indolore plus tard lorsque ces addons ajoutent un support pour 3.x. Si c'est un projet sur lequel vous envisagez de travailler pendant longtemps (c'est-à-dire plus qu'un simple projet de classe), je dirais probablement aller avec 3 et essayer de porter vous-même certains des addons. Mais pour le projet final d'une classe, ça ne vaut probablement pas le coup.

3

Réponse courte NO.

Réponse plus longue. Vous pouvez écrire votre frontend avec Python 2.5 et le backend avec 3.0, mais ils ne peuvent pas interagir du tout. Vous avez besoin d'une sorte de couche d'abstraction entre eux. Faire quelque chose comme ça, vous pouvez avoir n'importe quelle langue de l'autre côté.

Le calque d'abstraction devrait travailler sur les travaux et les repousser vers une sorte de file d'attente. C'est juste un exemple stupide et peut devenir vraiment compliqué au fur et à mesure. À la fin, la couche d'abstraction peut devenir encore plus compliquée que votre application, en supposant que c'est un travail pour une classe. Je voudrais écouter Jeremiah et discuter avec le professeur des marchandises et des mauvaises choses que vous avez avec Python 2.5 ou 3.0. Si vous incluez une explication des raisons pour lesquelles vous avez choisi l'une par rapport à l'autre dans votre papper final, je suis sûr que vous obtiendrez quelques points supplémentaires et il ne vous pénalisera pas pour cela.

Questions connexes