• [^] # Re: Former des développeurs Python/Zope compétents

    Posté par . En réponse à la dépêche Nuxeo CPS tournera sous Java. Évalué à 1.

    Bonjour à tous,

    En ce qui concerne Jython, je ne suis pas d'accord.

    Certes le projet lui-même semble marquer le pas en termes d'évolutions par rapport aux versions de CPython.

    Mais d'une part, cela reste cependant une solution très intéressante comme langage de script pour Java et d'autre part, quand on sait s'en servir, le couple Jython+Java offrent de très bonnes performances et rend le prototypage extrêmement souple.

    De nombreux projets Java utilisent Jython comme language de script, en particulier dans le domaine scientifique.

    Je prends pour simple exemple JyConsole, la console Jython que nous avons développée (http://www.artenum.com/fr/products/jyconsole.php). Elle intègre une complétion orientée objet (comme dans Eclipse), s'appliquant de manière totalement transparente que l'objet manipulé soit en Jython (i.e Python) soit en Java, voir y compris... en C++ si on passe par une couche JNI.

    C'est franchement pratique pour prototyper.

    JyConsole a été intégrée à Cassandra (http://www.artenum.com/fr/products/cassandra.php) notre visualiseur scientifique 3D ainsi qu'à plusieurs autres projets open-source comme HermesJMS (http://www.hermesjms.com/).

    Dans Cassandra, JyConsole nous permet par exemple de manipuler simplement et facilement, avec la complétion objet, toute la bibliothèque VTK...

    JyConsole et Jython sont aussi intégrés dans le projet de l'ESA SPIS (voir http://www.spis.org et surtout http://linuxfr.org/2006/09/07/21295.html). Les scientifiques issus du Fortran apprécient beaucoup Jython pour gérer le passage du séquentiel à l'objet (Java et C++)...

    Donc Jython n'est pas mort et est utilisé, je vous le confirme. Ce que cela montre surtout, c'est que le couple Jython+Java constitue vraiment un ensemble très efficace et pratique en particulier pour le prototypage et le contrôle en ligne de commande.

    PyPy semble très prometteur, en particulier en termes de performances. C'est à suivre donc. Mais l'avantage de Jython (dont l'interpréteur est en pur Java) réside dans sa portabilité et le fait qu'il ne nécessite de ne déployer qu'une seule Virtual Machine. Il reste donc facile à intégrer/embarquer dans des applications Java.

    Cela dit concernant les plate-formes collaboratives, l'ensemble Java/J2EE est aussi la solution technologique que nous avons retenu pour notre plate-forme collaborative LibreSource (http://www.libresource.org).

    Même si certains critiquent la complexité de mise en oeuvre de J2EE, le plan performances et surtout inter-opérabilité avec les autres plate-formes, le gain est ici significatif par rapport aux solutions sur base Python de type Zope.

    LibreSource étant diffusée et largement utilisée en production depuis près de deux ans avec de très bons retours de nos utilisateurs, cette solution est maintenant validée.

    Nuxeo marche donc sur les traces de LibreSource. Cela fait plaisir de voir que la voie ouverte il y a deux ans est maintenant suivie.

    Julien Forest
    Gérant d'Artenum