Drupal8 et Symfony2 poursuivent leur rapprochement

Après un premier rapprochement en novembre 2011, le leader mondial des CMS Open Source poursuit son intégration de la technologie Symfony2. Objectif pour les deux éditeurs : un socle de développement commun, une interopérabilité native et des retours d’expérience croisés.

Paris, le 26 avril 2012 – SensioLabs, créateur du framework Symfony, annonce l’intégration de nouveaux composants Symfony2 dans Drupal8, la prochaine version majeure du CMS Open Source. Initié en novembre 2011 avec l’intégration des composants ClassLoader et HttpFoundation, ce nouveau rapprochement confirme la volonté des deux communautés de travailler main dans la main autour d’un socle commun, afin de bénéficier d’une interopérabilité native et de retours d’expérience croisés.

Drupal : d’un framework propriétaire à un standard ouvert

Depuis l’origine, la core-team et l’ensemble de la communauté Drupal utilisaient un framework « maison » pour les développements de leur CMS. Pour le développement sa nouvelle version 8, Drupal prend donc un virage à 180°. Avec Symfony2, Drupal 8 s’appuie en effet sur un outil reconnu pour ses qualités de professionnalisation des développements, son interopérabilité avec les « standards de fait » de PHP et sa pérennité.

Pour Drupal 8 (et surtout pour ses développeurs), l’intégration de Symfony2 et de ses concepts de découplage des briques logicielles et d’extensibilité est aussi un gage de souplesse dans la conception et la mise en œuvre de son architecture et de ses fonctionnalités, qui font toute sa valeur ajoutée auprès de ses utilisateurs.

Un socle commun et le partage de connaissances

Déjà utilisé pour les développements de la version 8 de Drupal depuis l’automne 2011, les composants ClassLoader et HttpFoundation de Symfony2 sont désormais rejoints par les composants Routing, EventDispatcher, DependencyInjection et surtout HttpKernel (*), qui permettra à Drupal de profiter des nombreuses fonctionnalités intégrées de Symfony2. Un socle commun autour duquel des échanges et des développements mixtes pourraient rapidement voir le jour.

De même, l’implémentation de composants Symfony2 dans Drupal 8 sera l’occasion pour les deux communautés de partager leurs ressources et leurs connaissances, afin d’améliorer toujours plus l’interopérabilité entre les deux systèmes.

(*)Rappel : les composants Symfony2 utilisés dans Drupal8

  • ClassLoader : Permet de charger automatiquement les classes d’un projet, si elles sont conçues seront les conventions PHP standard.
  • HttpFoundation : Définit une couche d’abstraction orientée objet au dessus de la spécification HTTP.
  • Routing : Permet de générer des URL optimisées pour le SEO
  • EventDispatcher : Permet de gérer sans couplage fort les interactions entre différents composants.
  • HttpKernel : Propose un micro-kernel HTTP permettant de gérer le cycle de vie d’une appliation Web.
  • DependencyInjection : Gère les objets pour des projets complexes