En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de cookies pour vous proposer des services et offres adaptés à vos centres d’intérêts.FERMER  x
Pour en savoir plus et paramétrer les cookies...

Python mue en une v3 plus cohérente, mais rétro-incompatible

Apprécié pour sa facilité d'utilisation, le langage Python fait le ménage dans sa syntaxe et son architecture. Au point de sacrifier la compatibilité avec les versions antérieures.

laisser un avis
Il y a une dizaine de jours, en annonçant la naissance de Python 3, le créateur de Python, Guido van Rossum, écrivait que cette version du langage interprété est ' volontairement rétro-incompatible '. Ce qui signifie que les programmes écrits en Python 2.5 et 2.6 ne peuvent pas fonctionner avec les interprètes de la version 3. Il faudra procéder à une migration du code. Heureusement, un outil baptisé 2to3 est mis à disposition pour simplifier la tâche des développeurs.
Si les créateurs de Python ont pris cette décision, c'est tout simplement parce qu'ils ont souhaité ' décrotter ' ce langage qui existe maintenant depuis près de 18 ans. ' Nous avons corrigé les problèmes connus et enlevé beaucoup d'ancien fatras ', explique Guido van Rossum, dans son article.

Valeur binaire et valeur texte

Parmi les changements les plus importants, figure la distinction nette qui est désormais faite entre valeur binaire et valeur texte que peuvent prendre les variables. Auparavant, il était possible de mixer ces deux types de valeurs, une conversion étant effectuée à la volée par l'interprète. Cette façon de faire était assez flexible, mais ' le problème, c'est que cela ne marche pas à tous les coups. Et quand il y a un problème, il est difficile de le corriger. Désormais, les choses sont beaucoup plus claires ', explique Victor Stinner, ingénieur développeur chez INL, un éditeur et intégrateur dans les domaines de l'open source et de la sécurité.
Un changement du même acabit est lié aux nombres entiers. Dans les versions 2.5 et 2.6, il existe des entiers courts et des entiers longs. Là encore, l'interprète effectuait une conversion automatique en cas de besoin. Mais parfois, le développeur était confronté à des dépassements de capacité assez difficiles à cerner. Désormais, les deux types d'entiers sont fusionnés, simplifiant d'autant l'écriture des programmes.
Les responsables de Python ont également fait pas mal de ménage dans la librairie standard, qui est l'une des grandes forces de ce langage, car elle intègre énormément de composants logiciels et facilite le développement. Avec la version 3, beaucoup d'anciens modules ont été enlevés, d'autres ont été fusionnés. L'objectif étant de proposer une librairie plus cohérente et plus structurée.

L'adoption ne se fera pour tout de suite

Bien que toutes ces améliorations soient très sympathiques, il y a peu de chances que l'adoption de la version 3 se fasse rapidement. Tout d'abord en raison du manque de rétro-compatibilité. Même si elle est relativement simple à mettre en place, elle apporte toujours une dose de risque. Les entreprises vont donc appliquer le vieux principe informatique ' pourquoi changer quelque chose qui marche ? '. D'autant que les versions 2.5 et 2.6 subsisteront encore pendant des années.
Par ailleurs, la version 3 n'est pas encore optimisée et abaisse les performances de calcul de 10 % par rapport aux versions précédentes. Les utilisateurs attendront donc au moins pendant un an, avant d'utiliser Python 3 en production.
Enfin, Python 3 tout seul n'est pas forcément très utile. Il faut aussi que les principales extensions du langage se mettent au diapason de la nouvelle version, telles que Zope pour le développement Web, SciPy pour l'ingénierie, Twisted pour la programmation réseaux, etc. Cette adaptation risque de prendre un peu de temps, vu le ménage qui a été fait. Zope, comme l'explique le consultant spécialisé Cameron Laird, a par exemple mis six mois pour implémenter la version 2.6...
envoyer
par mail
imprimer
l'article


@01Business_fr sur
à lire aussi
SUR LES MÊMES THÈMES
La banque d’investissement de la Société générale passe ses équipes à l’agilité
Devops : et si développeurs et ingénieurs système enterraient la hache de guerre ?
Quels sont les OS mobiles préférés des développeurs ?
La première édition parisienne de DroidCon se tiendra les 17 et 18 juin
C, le langage le plus prisé par les développeurs
Le top 5 des compétences IT les plus demandées : PHP, HTML, MySQL, JavaScript et HTML5
Pourquoi s’intéresser à l’écoconception applicative ?
Microsoft lance un site dédié pour les développeurs Windows 8
Visual Studio 2012 - Objectif : Attirer les développeurs vers Windows 8
Embarcadero se lance dans la compétition des outils HTML5
Logiciels de développement : une industrie de 9 milliards de dollars
Coup de froid sur la communauté des développeurs Twitter
Oracle remet à niveau Java sur Mac OS X, Linux et ARM
Office 15 puisera dans le web pour enrichir les documents
Wakanda 1.0, nouvel environnement HTML5/NoSQL
NuageTouch : quand un chercheur en IHM s'invente éditeur de logiciels
On ne pourra plus programmer gratuitement pour Windows
Changer la façon de programmer économiserait de l’énergie
Très haut débit : Berlin vise 100% de couverture en 2018
La lettre des abonnés 01Business