
Faut-il maintenant abandonner Python 2.x pour les versions 3.x ?
Alors que la sortie de Python 3.x a fait naître de vifs débats au sein de la communauté des développeurs, une nouvelle version stable du langage de programmation vient de voir le jour avec une pile de nouveautés et améliorations. Python 3.5.0 est en effet disponible depuis hier avec au menu, de nombreux changements et nouveautés dont les principaux sont entre autres :
- L’ajout du formatage % pour les objets bytes et bytearray ;
- L’ajout d’un nouvel opérateur pour la multiplication matricielle (@) ;
- Une nouvelle fonction d’itération de répertoire os.scandir () qui augmente la vitesse de la fonction os.walk () de 2 à 20 fois selon la plateforme et le système de fichiers ;
- L’ajout de support pour réessayer automatiquement les appels système interrompus ;
- Un changement à l'intérieur des générateurs lorsque StopIteration est levé ;
- Une nouvelle norme pour les annotations de type ;
- L’introduction de math.isclose (), une fonction pour tester l'égalité approximative ;
- Le lanceur Python de Windows peut désormais détecter les environnements virtuels ;
- L’élimination des fichiers .pyo des fichiers Python ;
- Un mécanisme nouveau et amélioré pour charger les modules d'extension ;
- L'amélioration du support des « applications zip Python ». Il s'agit d'une terminologie qui sera utilisée pour désigner une archive qui contient du code Python dans une forme qui peut être directement exécutée par Python. L'installateur Python 3.5 va associer les extensions .pyz (applications zip Python) et .pyzw (applications zip Pyhton sous Windows) aux plateformes correspondantes. Une extension a été spécifiquement définie pour Windows parce que l'installateur de Windows n'enregistrait pas une extension spécifique (autre que .py) pour ce type de format.
Au sein d’une communauté de développeurs partagée entre Python 2.x et 3.x, ces améliorations pourraient peut-être inciter certains conservateurs à faire le pas vers Python 3.5. Les scientifiques et analystes de données en retireront probablement un gain avec par exemple l’introduction de l’opérateur pour la multiplication matricielle (@).
Pour rappel, les débats actuels sur les versions de Python résident dans le fait que certains développeurs ont trouvé trop brutale la transition entre 2.x et 3.x, à cause d’une certaine rupture de la compatibilité. S’il semble idéal de commencer les nouveaux projets Python avec les versions 3.x, toutefois la migration des projets existants pourrait s’avérer très coûteuse, pour les grands projets surtout. Pour cette raison, de nombreuses entreprises s’accrochent aux anciennes versions.
A l’opposé, les autres développeurs estiment que les améliorations apportées par Python 3.x, comme pour le support de l’Unicode sont assez suffisantes pour abandonner les versions 2.x. Certains estiment même que l’abandon du support de Python 2.x serait la bienvenue, dans la mesure où l’utilisation parallèle de ces différentes versions pourrait tuer le langage et entrainer un exode vers d’autres langages équivalents.

Et vous ?



Vous avez lu gratuitement 11 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.