Avec sa version 3.0, Python mue pour s'harmoniser 

Le 09 décembre 2008 (10:15) - par Cyrille Chausson

Rubriques : Outils de développement - langages Tags : web - developpement - communaute

Malgré quelques incompatibilités clairement affichées, la version 3.0 de Python habille un des langage tendance du développement Web d'une nouvelle peau, gage de sa maturité. Une nouvelle forme pour gommer ses erreurs de jeunesse.

« La première version de Python où la rétro compatibilité a été intentionnellement oubliée. »  C'est en ces termes que Guido van Rossum, développeur principal de Python a inauguré la sortie de la version 3.0 de son langage. Une mouture qui tranche avec les versions précédentes et extrait le langage de son ère 2.0 pour le plonger dans une mise à jour, «plus que majeure ». Au programme, syntaxe révisée et comme prévu depuis plusieurs mois, une incompatibilité fermement assumée avec les versions existantes. Le tout, pour un futur meilleur.

Python fait parti de ces langages qui montent, à l'image de Ruby (avec son framework Ruby on Rails) dont nous évoquions récemment l'ascension à l'occasion de Paris on Rails 2008. Python, qui a fait ses débuts en 1991, est à la base d'environnements comme Zope, ou encore du framework Django qui motorise, avec son système de template, Google App Engine, le framework de développement d'applications dans le nuage de Google. Le groupe a par ailleurs recruté Guido van Rossum.

Selon une étude EvansData, Python est réputé auprès des utilisateurs pour la lisibilité du code et sa facilité d'usage. Toujours selon cette même étude, il occupe la 4e place des langages interprétés préférés des développeurs, derrière Ruby, Atlas (le framework Ajax de Microsoft) et Flex (Adobe). PHP arrive en 6ème position de ce classement.

Harmoniser le langage

Cette version 3.0 de Python rompt avec le cycle classique du langage, en le corrigeant et en gommant ses défauts. C'est ainsi que Guido van Rossum résume en substance les modifications apportées à Python 3.0. Un point que confirment Philippe Lafaye et Julien Fache, deux développeurs de la SSLL Emencia spécialisée dans les développements Python, pour qui « cette mise à jour a justement pour but d'effacer les erreurs de jeunesse du langage, le faire progresser en prenant en compte l'évolution des besoins dans le milieu informatique, et de profiter d'idées qu'ont pu apporter certains nouveaux langages ». C'est notamment le cas de la Curryfication, un concept de programmation imaginé par le logicien américain Haskell Curry, déjà présent dans Perl, et qui a été introduit dans la version 2.6 de Python.

C'est ainsi le prix à payer de quelques incompatibilités, semblent-ils dire. D'autant que « les changements dans l'environnement Python pur ne sont pas si grands. Le plus représentatif est le passage du mot clef "print" [qui permet d'afficher les résultats d'une opération, notamment NDLR] en fonction. Il va falloir se re-adapter légèrement à la nouvelle syntaxe mais rien de contraignant ». Et d'ajouter : « Il faut savoir qu'à chaque version majeure de Python, de nouveaux éléments se greffent à la syntaxe et revoir sa manière de développer est donc déjà une habitude ».

Ces problèmes d'incompatibilités ne sont donc pas si handicapants que cela, pour le développeur. « L'apport de Python 3.0 est vraiment plus considérable que ses problèmes de non retro-compatibilité, avec notamment la gestion du tout Unicode qui évitera les trop nombreux problèmes d'encodage, » commentent Philippe Lafaye et Julien Fache dans un email envoyé à la rédaction.
D'autant que la migration vers la 3.0 depuis la 2.x, si elle peut être délicate, notamment « au niveau de l'interfaçage avec C », a été planifiée à l'avance par les équipes de la communauté Python. Un passage presque sans douleur puisque « la version 2.6 sortie il y a 2 mois, intègre les nouveautés de Python 3.0 en gardant la compatibilité 2.5 », soulignent-il.

Restera alors à appliquer le script 2to3 qui « s'occupe d'automatiser la migration de code 2.6 en 3.0 » et viendra ainsi, une fois quelques correctifs appliqués, clore la procédure de migration. Et ce, sans ré-écriture de code. Pas question alors de voir la communauté s'éroder et filer à l'anglaise vers d'autres langages, comme Ruby.

le mag it premium
vues 1034 lectures commentaire 1 commentaire(s) recommandation notez cet article
3

Réagissez à cet article

Votre Pseudo

Commentaire

Pertinence du commentaire : 3
Par Dr. Karl VI von Thulé
L'un des interwievés evolue en bien , super cela ....
Noter ce commentaire
Les plus populaires
Les plus lus Les mieux notés Les plus commentés
LES BLOGS DE LA REDACTION

Indi@

IBM To Partner With Five NGOs In Pune Corporate Service Corps

Nine IBM professionals from around the world will come to Pune to work on…

Reynald Fléchaux

Jour.homme

Dégraisser le mammouth informatique de l’Etat : vers une solution à l’anglo-saxonne

Le ministère du Budget prépare sa deuxième conférence sur les déficits…

Valery Marchive

Casualtek

Lutte contre la pédopornographie : des moyens artisanaux qui tranchent avec la volonté politique affichée

La pédopornographie, sur Internet, est une réalité difficile : discuter…

LesSourcesIT
Livres blancs
juniper couv2 0310

Investissement dans le réseau en vue de recevoir un service de cloud computing évolutif, fiable et sécurisé – Une étude Forrester

Les entreprises sont de plus en plus attirées par les services informatiques. Grâce à leur investissement dans le clo...

juniper couv1 0310

Un accès distant sécurisé garantissant la protection des données et la continuité des opérations

Pour la continuité des opérations ou en cas de travail à domicile, il peut être nécessaire que les employés accèd...

Les dossiers du MagIT
Les dernières offres d'emploi

 Ingénieur Informatique de Gestion H/F

Kelly Services, 5ème réseau mondial de travail temporaire, bénéficie de 60 années d'expérience dans le recrutement et la mise à disposition de personnel. Nous recherchons un ingénieur...

 Assistant à Maîtrise d'Ouvrage AMOA H/F

Vous souhaitez donner de l'élan à votre carrière ? KELLY IT-ENGINEERING, spécialisé dans la recherche de profils dans le domaine de l'Informatique et des Arts Graphiques recherche en urgence pour un...

 Technicien informatique H/F

Kelly IT Ressources, société de conseil en recrutement et solutions en ressources humaines, spécialisée dans les métiers de l'informatique et des nouvelles technologies, recrute pour un de ses...

 Chef de projet fonctionnel H/F

Kelly Services , 5ème réseau mondial de travail temporaire, bénéficie de 60 années d'expérience dans le recrutement et la mise à disposition de personnel. Nous...

 Ingénieur Développeur C H/F

KELLY INFORMATIQUE division spécialisée Systèmes et Réseaux, Télécoms et Nouvelles Technologies de KELLY SERVICES recrute pour un de ses clients UN INGENIEUR DEVELOPPEMENT C (H/F).