INTERVIEWS 
 
Cyril Pierre de Geyer
Président
AFUP
Cyril Pierre de Geyer
"Avec PHP 5, PHP s'est rapproché de Java"
A l'occasion de la sortie de la version finale de PHP5, le président de l'Association Française des Utilisateurs de PHP revient sur les améliorations que les développeurs y trouveront.
16/07/2004
 
JDN Développeurs : Parlons d'abord de l'arrivée de la version finale de PHP 5.0. Pouvez-vous nous donner les principales raisons de ce changement de version, pour ceux qui n'ont pas suivi l'évolution. En particulier, qu'est-ce qui peut justifier de passer de PHP4 à PHP5 ?
  En savoir plus
Site officiel PHP
AFUP
Livre "PHP 5 avancé"
Anaska - formation PHP

Cyril PIERRE de GEYER : PHP 5 est une évolution de PHP qui va simplifier et professionnaliser le développement d'applications.

Bien que PHP 4 supporte une pléthore de SGBD et de nombreuses extensions d'interfaçages, il peut arriver que l'on se retrouve bloqué face à un système propriétaire. La solution généralement utilisée si aucune connexion native n'est possible est de passer par des flux XML. Avec PHP 4 c'était possible mais compliqué.

PHP 5 apporte des nouveautés d'importance côté XML. D'une part, l'intégration de la librairie libxml2 amène une implémentation DOM standard et d'autre part SimpleXML permet de manipuler extrêmement facilement des flux XML. Dans les cas où SimpleXML ne serait pas adapté, les fonctionnalités traditionnelles DOM / SAX / SOAP / XML-RPC / de PHP permettront de répondre au besoin.

Le changement le plus attendu est le nouveau moteur de PHP, le Zend Engine 2 qui permet une programmation orientée objet comparable à celle de Java. Tous les aficionados de la POO devraient s'y retrouver.

Enfin la nouvelle base de données embarquée dans PHP 5 : SQLite devrait donner une nouvelle envergure aux applications de type client riche.

Avec toutes ces améliorations PHP s'apparente désormais plus à une plate-forme d'entreprise qu'à un simple langage de programmation. Pourquoi ? Tout d'abord c'est un langage évolué. Ensuite, PHP ne se limite pas à la production d'une seule interface pour exposer sa logique métier. Il est possible d'utiliser PHP pour faire une sortie HTML mais également pour des clients riches, pour des webservices, pour des fichiers Word, open office et PDF et même en ligne de commande.

En quoi ces évolutions aideront les développeurs à mieux travailler au quotidien ?
Bien qu'autorisant toujours la programmation procédurale classique, PHP rend maintenant envisageables des développements Objets complets sans limitation. Les avancées sur ce modèle et les nouvelles fonctionnalités comblent l'essentiel des différences sur ce sujet vis à vis des langages plus réputés comme Java.

Par ailleurs, les nombreuses nouvelles fonctionnalités vont aider le développeur à augmenter sa productivité. On peut particulièrement penser aux interfaces XML qui ont été complètement refaites.

Quel sera, selon vous, le temps d'adoption de cette nouvelle version par les hébergeurs et les entreprises ?
Le temps d'adoption d'une nouvelle version, même majeure, est toujours long.
La migration des anciennes applications risque de prendre du temps mais étant donné les améliorations notables de PHP5 il y a de fortes chances pour que son adoption soit rapide pour les nouveaux développements dans les entreprises. Plus on sera dans un contexte d'applications pointues et professionnelles, plus ce sera rapide.

Sera-t-il toujours possible de faire du PHP4 sur un serveur ne disposant que de PHP5 ?
Bien sûr. En fait pour tout ce qui ne touche pas à la programmation objet, cela sera compatible. Par contre, si vous avez utilisé les Objets de la version 4, il peut y avoir quelques modifications nécessaires pour migrer. Cela dit, il existe une directive de configuration (zend.ze1_compatibility_mode) qui permet de garder l'ancien comportement sur la gestion des objets.

De toutes façons, le portage des applications non compatibles ne devrait pas être très long. Les scripts posant réellement de gros problèmes de transition devraient être rares.

On dit que PHP5 cherche avant tout à se rapprocher de Java. Est-ce une affirmation justifiée ?
PHP s'est rapproché de Java de deux façons. La première au niveau compatibilité et interactions. La seconde au niveau du code.

L'année dernière déjà lors des Java Days, Zend (la principale société derrière PHP) et Sun ont signé un accord de partenariat pour développer une extension permettant à leurs deux technologies d'interagir. Lors de la conférence PHPQuebec, un développeur de Zend m'a annoncé que l'extension était en phase d'assurance qualité et que sa sortie devrait suivre celle de PHP5.

Ceci dit, je pense que la question était plutôt en rapport avec le nouveau modèle Objet de PHP 5. Effectivement, il y a un rapprochement puisque les deux se ressemblent beaucoup. Mais PHP 5 ne se limite pas à la programmation Orientée-Objet. Comme .Net, PHP accepte plusieurs langages de programmation (script, Objet).

PHP, par sa facilité, a souvent été mis dans la section des langages de prototypage : il faut ensuite terminer l'application dans un langage plus "robuste". Pensez-vous que PHP5 pourra faire disparaître l'idée qu'il ne s'agirait pas d'un "vrai" langage comme Java (avec J2EE) ou C# (avec ASP.NET) aux yeux de certains professionnels ?
C'est l'une des forces de PHP qui l'a amené à être déconsidéré : c'est un outil qui se veut facile de prise en main. C'est vrai qu'avec PHP, vous pourrez commencer à faire des applications simples après seulement quelques jours d'apprentissage. De nombreuses personnes se sont arrêtées là et ne savent pas qu'il est possible d'aller beaucoup plus loin : générer des images, utiliser des webservices, se connecter à quasiment toutes les bases de données du marché, créer des clients riches avec phpGTK, interagir avec Java/Word/Excel/PDF, traiter des fichiers XML,...

Le vrai manque de PHP 4 est dans la programmation orientée objets. Ce n'est plus vrai avec PHP 5.

Le vrai manque de PHP 4 est dans la programmation orientée objets. Ce n'est plus vrai avec PHP 5.

Concernant la robustesse et les performances de PHP, j'invite toutes les personnes qui doutent à consulter le livre blanc de l'AFUP. On y apprend notamment que 6 des 10 plus gros sites français en terme de volumétrie utilisent PHP et que c'est la technologie dynamique la plus utilisée sur Internet devant ASP.net et Java.

Bref, s'il existe encore des gens qui doutent de PHP, c'est qu'ils ne se sont pas suffisamment intéressés au sujet.

Vous êtes co-auteur, avec Eric Daspet, du livre "PHP5 avancé" aux Editions Eyrolles. C'est l'un des premiers titres en français sur PHP5. Quel est selon vous son (petit ou gros) "plus" par rapport à la flopée d'ouvrages qui ne manquera pas d'être publiée dans les mois qui viennent ?
L'arrivée de PHP 5 n'a été qu'un prétexte à l'écriture de ce livre. Eric est très versé dans le respect des normes et son expertise technique est très forte. De mon coté mon expérience de développement et de formation chez Anaska me donne une approche à la fois technique et pédagogue.
Nous sommes extrêmement impliqués dans la communauté française et de là découle un autre avantage c'est que le livre est écrit par des Français pour des Français (chiffres, sites de références, retours d'expériences, ...).

Nous voulions un livre qui se veut être un compagnon de travail. Un livre qui ne soit pas une copie de l'excellente documentation en ligne mais un ouvrage de référence qu'on garde toujours à portée de main.

Nous avons finalisé l'écriture après la Release Candidate 2 de PHP 5 (25/04/04), à un moment où l'équipe avait décidé de ne plus faire que de la correction de bugs et ne rien changer aux fonctionnalités. Nous avons attendu d'être certains que rien ne rendrait le livre obsolète avant de le faire imprimer.

Vous êtes également président de l'AFUP. Quel est son rôle et en quoi le développeur PHP lambda peut-il profiter de son existence ?
L'association française des utilisateurs de PHP (www.afup.org) a pour objectif de promouvoir le PHP. Nous avons de nombreuses activités dont les principales sont la réalisation du livre blanc de l'AFUP (http://www.afup.org/wp.pdf) qui fait un état de l'art de PHP en France et l'organisation du Forum PHP (18 et 19 novembre 2004).

Le développeur lambda, en cotisant à l'association, nous aide à avoir les moyens de communiquer sur PHP et d'en faire la promotion. Il a également accès à une liste de diffusion et est tenu au courant des informations PHP en avance.

 
Propos recueillis par Xavier Borderie, JDN Développeurs

PARCOURS
 
 
Cyril Pierre de Geyer est responsable technique de l'organisme de formation Anaska, spécialisé dans les technologies Open Source. II est président de l'Association française des utilisateurs de PHP (AFUP) et participe aux sites PHPteam.net et PHPfrance. Il a à son actif professionnel des références telles que France3, EPITA, Urssaf. Son expertise l'a amené à intervenir lors de nombreuses conférences nationales et internationales. Il a publié en 2004 le livre "PHP 5 avancé" avec Eric Daspet, aux Editions Eyrolles..