article de presse - Cap Data Consulting
article de presse - Cap Data Consulting
article de presse - Cap Data Consulting
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
T echnologie<br />
SchoolTool en action<br />
ajouté. Le ZCML définit les associations entre<br />
adapter et élément "à adapter".<br />
Les factories<br />
Les factories sont <strong>de</strong>s classes ou <strong>de</strong>s fonctions<br />
qui ont pour rôle <strong>de</strong> générer <strong>de</strong>s instances d'objet<br />
d'un type donné. Une directive ZCML permet<br />
d'associer ces usines d'objets au type géré et<br />
offre une interface unique <strong>de</strong> création d'instances.<br />
État actuel du projet<br />
Zope 3 permet d'ores et déjà <strong>de</strong> développer tout<br />
type d'applicatif. Le launchpad d'Ubuntu ou encore,<br />
l'outil <strong>de</strong> gestion d'école SchoolTool <strong>de</strong> la fondation<br />
Marc Shuttleworth en sont <strong>de</strong>s exemples.<br />
Le framework ne possè<strong>de</strong> cependant pas encore<br />
l'équivalent <strong>de</strong> la solution Zope 2+CMF actuelle,<br />
c'est-à-dire <strong>de</strong>s fonctionnalités <strong>de</strong> base<br />
pour produire <strong>de</strong>s gestionnaires <strong>de</strong> contenus<br />
complets comme Nuxeo CPS. Cette couche est<br />
en cours <strong>de</strong> construction par divers projets<br />
comme le projet Z3ECM, ou le projet GoldEgg,<br />
mais aussi par le projet CMF lui-même, qui<br />
intègre <strong>de</strong>s composants Zope 3. Ces initiatives<br />
se consoli<strong>de</strong>ront prochainement par le biais <strong>de</strong><br />
la création <strong>de</strong> la Zope Foundation, qui aura<br />
comme objectif <strong>de</strong> gérer les intérêts <strong>de</strong> Zope<br />
par le biais d'un consortium composé <strong>de</strong><br />
membres <strong>de</strong> la communauté. Julien Anguenot,<br />
qui participe au projet Z3ECM, dit <strong>de</strong> celui-ci:<br />
"Z3ECM est une fantastique opportunité <strong>de</strong><br />
développer une plate-forme d'ECM (Entreprise<br />
Content Management) libre, basée sur le très<br />
puissant serveur d'applications Zope 3, et<br />
d'unifier la communauté Zope autour <strong>de</strong> l'ECM<br />
dans le cadre <strong>de</strong> la future Zope Foundation."<br />
De Zope 2 à Zope 3,<br />
migration en douceur<br />
Le problème majeur vécu par la communauté<br />
<strong>de</strong> développeurs Zope 2 est le fossé technique<br />
entre Zope 2 et Zope 3 : même si la philosophie<br />
<strong>de</strong> Zope est conservée, la manière <strong>de</strong><br />
concevoir une application Zope est complètement<br />
chamboulée. Une application développée<br />
sous Zope 2 ne peut pas resservir en l'état<br />
sous Zope 3. Il existe heureusement une solution<br />
<strong>de</strong> transition, appelée Five.<br />
Five, pont technologique<br />
Five est un pont technologique entre Zope 2 et<br />
Zope 3. Ce produit Zope 2, développé par la<br />
communauté, permet d'utiliser dès aujourd'hui<br />
une partie <strong>de</strong>s technologies Zope 3 dans une<br />
application Zope 2.<br />
Si Five n'offre pas un système <strong>de</strong> traduction<br />
<strong>de</strong>s applications Zope 2, il permet <strong>de</strong> rendre<br />
accessible aux développeurs Zope 2 le co<strong>de</strong><br />
Zope 3 et une partie <strong>de</strong> ses mécanismes.<br />
L'intérêt <strong>de</strong> ce produit est double: il offre<br />
aux développeurs la possibilité <strong>de</strong> co<strong>de</strong>r<br />
<strong>de</strong>s produits utilisables dans <strong>de</strong>s applicatifs<br />
actuels tout en s'assurant <strong>de</strong> leur compatibilité<br />
avec le futur, mais il permet égale-<br />
Programmez n°85 60 avril 2006<br />
ment <strong>de</strong> se former aux technologies Zope 3.<br />
Les CMS actuels utilisent Five pour procé<strong>de</strong>r à<br />
une migration douce: le nouveau co<strong>de</strong>, qu'il<br />
s'agisse d'un refactoring ou d'un ajout, est<br />
développé par ce biais.<br />
Cette solution n'est pas parfaite car le résultat<br />
n'est pas un produit zope 3 pur, et possè<strong>de</strong> encore<br />
souvent <strong>de</strong>s dépendances sur Zope 2, surtout<br />
si il utilise <strong>de</strong>s fonctionnalités <strong>de</strong> la couche CMF,<br />
encore inexistantes sous Zope 3. Elle est cependant<br />
très intéressante pour les gros frameworks<br />
comme CPS, qui comptent une soixantaine <strong>de</strong> produits:<br />
un basculement progressif <strong>de</strong>vient possible.<br />
2006, l'année <strong>de</strong> transition<br />
2006 est une année charnière pour Zope: suite<br />
à l'intégration en 2005 <strong>de</strong> Five dans le co<strong>de</strong><br />
<strong>de</strong> Zope 2, l'unification <strong>de</strong>s versions s'est<br />
accélérée.<br />
Parmi les évènements majeurs à venir, initiés<br />
l'an <strong>de</strong>rnier:<br />
- le lancement <strong>de</strong> la Zope Foundation ;<br />
- la synchronisation <strong>de</strong>s releases Zope 3 et<br />
Zope 2 (2 releases par an, à date fixe: Zope 2.9<br />
et 3.2 en Janvier 2006, Zope 2.10 et 3.3 prévues<br />
en Juin 2006) ; une utilisation <strong>de</strong> plus en<br />
plus importante <strong>de</strong>s composants Zope 3 dans<br />
les projets Zope 2 existants.<br />
Signalons enfin une initiative lancée par l'auteur<br />
<strong>de</strong> ces lignes: le site zope-cookbook.org,<br />
qui a pour objectif <strong>de</strong> fournir aux développeurs,<br />
qu'ils soient novices ou issus <strong>de</strong> Zope 2,<br />
un recueil <strong>de</strong> tutoriels et <strong>de</strong> recettes pour<br />
développer sous Zope 3.<br />
■ Tarek Ziadé<br />
Références<br />
[en] Site officiel <strong>de</strong> Zope : http://zope.org/<br />
[en] Z3ECM : http://z3lab.org/<br />
[en fr] Nuxeo CPS : http://cps-projet.org/<br />
[en] Silva : http://www.infrae.com/products/silva<br />
[en] Plone : http://plone.org/<br />
[en] Tutoriel Five (Russ Ferriday<br />
& Jean-François Roche) :<br />
http://plone.org/documentation/tutorial/<br />
walking-through-five-to-zope-3/<br />
[en] Gol<strong>de</strong>gg : http://www.gol<strong>de</strong>ggstack.org/<br />
[en] Schooltool : http://www.schooltool.org/<br />
[en] Launchpad : https://launchpad.net/<br />
[en fr] Le projet Zope 3 Cookbook :<br />
http://zope-cookbook.org