Nicolas Silberman (AFUP) "Microsoft France s'est beaucoup rapproché de la communauté PHP"
PHP 5.3 et 6, émergence d'Eclipse PDT, de Symfony... Le président de l'AFUP fait le point sur les grandes évolutions de la galaxie PHP. Un entretien réalisé dans le cadre du Forum PHP.
Cette interview est réalisée dans le cadre du Forum PHP qui se tient à Paris les 9 et 10 novembre à la Cité des sciences et de l'industrie. Le fondateur du langage, Rasmus Lerdorf, sera présent, aux côtés de grands contributeurs du projet PHP.
JDN Solutions. Quelles sont les dernières évolutions marquantes du langage PHP ?
Parmi les grandes évolutions de PHP 5.3, on note l'arrivée des namespaces, ainsi qu'une amélioration des réglages de sécurité. C'est notamment le cas en matière de garbage-collector [ndlr qui répond aux problèmes de fuite de mémoire]. PHP 6 a plus de mal à avancer. Ce projet de nouvelle version, avec notamment au programme le support de l'UTF8, a été mis en pause. Le temps que les équipes de développement gravitant autour de PHP se mettent d'accord. En attendant, il est probable qu'une sous-version 5.X sortent avant.
Plus globalement, PHP est un langage qui se professionnalise. Il avait une image de langage de bas étage et de débutant, qui est issue de ses versions 3 et 4. Avec la version 5, il supporte le XML. Son passage à une logique orientée objet a également apporté beaucoup. Les bonnes pratiques de développement et la nomenclature se sont également bien renforcées.
Les frameworks PHP Zend et Symfony semblent de plus en plus s'imposer comme des références. L'un est-il meilleur que l'autre ?
Il s'agit de deux frameworks différents. Symfony est une infrastructure pour développer des applications en s'appuyant sur MVC [ndlr Modèle-Vue-Contrôleur]. Quant à Zend, c'est une bibliothèque de composants et d'outils prêts à l'emploi, utilisables de façon indépendante. Mais Zend propose également un approche MVC. Les deux frameworks peuvent d'ailleurs être utilisés de manière complémentaire. Il est possible d'utiliser des composants de Zend dans Symfony. Typiquement, Symfony peut exploiter le composant d'indexation Lucene issu de Zend.
Mais à l'inverse, le projet Symfony améliore son framework en s'inspirant de Zend. Il s'enrichit en effet par une démarche de composants qui touche de nombreux domaines : la sécurité, la prise en charge des fichiers de configuration YAML...
"La multiplication des CMS en PHP engendre une dynamique de créativité"
Quel est l'intérêt d'utiliser Eclipse, via Eclipse PDT, pour le développement PHP ?
Il y a deux écoles : les développeurs qui ne jurent que par la ligne de commandes et le codage en dur d'une part, ceux qui utilisent un IDE d'autre part. Un environnement de développement comme Eclipse est intéressant pour les gros projets et le travail en équipe. Il permet de faciliter le travail au quotidien, en apportant toute une série d'outils, pour les tests et le débogage, pour la gestion de version... Il offre aussi la possibilité d'accéder rapidement à ses descriptions de fonctions, et gérer sa documentation technique notamment. Il permet par exemple d'utiliser des TODO/FIXME pour gérer efficacement ses annotations et ses tâches, en se branchant sur des outils de tracking de bugs.
Certains développeurs préféreront des éditeurs de code plus rapide à lancer ou à configurer. C'est le cas de Zend qui propose un environnement de développement préconfiguré, avec Zend Studio, avec à la clé toute la connaissance de Zend sur le langage PHP, le tout intégré au serveur d'applications Zend Server qui inclut un outil de debugging.
Drupal, Joomla!, SPIP... Les CMS en PHP se sont multipliés au fil des années. Cette tendance est-elle une bonne chose ?
La multiplication des systèmes de gestion de contenu en PHP engendre une dynamique de créativité. Les projets s'enrichissent les uns les autres. Cette dynamique est dénuée de toute logique comptable qui pourrait la freiner ou la rationnaliser. Seule l'innovation compte. Les besoins des entreprises sont variés sur ce terrain. Cela explique sans doute cette profusion de CMS, mais aussi la tendance des frameworks de gestion de contenu à gagner en modularité. Des sites préfèrent aussi tout recréer de A à Z du fait de problématiques particulières en matière de performance, d'intégration, ou encore des besoins fonctionnels de bas niveau ou sur le plan de la sécurité.
"Peut-être qu'à terme nous verrons l'acronyme LAMP être remplacé par LASP"
Sur ce point, le projet de CMF [ndlr Content Management Framework] initié par Sensio est une initiative intéressante. C'est un framework permettant de créer des CMS sur l'infrastructure Symfony. Il se présente sous la forme d'une bibliothèque de composants définissant ce qu'est un article, un commentaire, mais aussi la manière de gérer un profil utilisateur ou une photo.
Que pensez-vous de l'émergence de PHP dans les offres de Cloud Computing ?
Le Cloud est une bonne chose. Il permet aux développeurs de ne plus avoir à s'occuper des couches matérielle, serveur et réseau dont l'exploitation est laissée à la charge de l'hébergeur. Du côté de PHP, Microsoft a fait un gros travail pour recompiler PHP 5.3 sur sa plateforme Azure. Zend a rendu accessible une image virtuelle de Zend Server sur le service de Cloud d'Amazon [ndlr EC2]. Amazon permet lui même d'utiliser PHP pour discuter avec sa base de données dans le Cloud. En France, OVH a également lancé une offre de Cloud autour de PHP.
Comment les efforts d'ouverture de Microsoft en direction de PHP sont-ils perçus par la communauté ?
Depuis deux ans, Microsoft s'est rapproché des projets PHP dans une perspective de dialogue. Son image est en train de changer, même si son image historique est encore bien ancrée. Force est de constater de gros efforts, avec notamment la présence de représentants locaux de Microsoft chargés des relations avec les communautés Open Source. C'est en particulier le cas en France. Microsoft est d'ailleurs partenaire du Forum PHP depuis l'année dernière.
Coyez-vous à la disparition de MySQL au profit du fork MariaDB ?
Difficile encore de répondre à la question. Peut-être qu'à terme nous verrons l'acronyme LAMP [ndlr Linux, Apache, MySQL, PHP] être remplacé LASP [ndlr Linux, Apache, SkySQL, PHP]. Les équipes de SkySQL seront présentes à l'occasion du Forum PHP pour expliquer ce qu'elles veulent faire avec MariaDB.
Pour l'heure, la politique d'Oracle reste assez floue. On a compris qu'Oracle allait privilégier une démarche commerciale. Mais est-ce que les versions libres de MySQL seront aussi bien maintenue que les versions payantes ? Comment évoluera la politique tarifaire ? Beaucoup de questions demeurent en suspend, ce qui est loin d'être rassurant. En tout état de cause, l'émergence de SkySQL est une bonne chose. La concurrence peut être saine. Reste à savoir quelle sera la réaction d'Oracle.
Nicolas Silberman est président de l'AFUP (Association Française des Utilisateurs de PHP).