Symfony 3


Technique

Symfony est un framework PHP, un ensemble d’outils et de composants logiciels cohérents qui sert à créer la base de structures de développement, mais aussi le squelette d’une partie ou de la totalité d’un logiciel.

 

Depuis plusieurs années, Symfony est entré dans les habitudes de développement de grosses structures internet. Par sa fiabilité, ses mises à jour régulières et sa communauté, Symfony est aujourd’hui un outil fréquemment choisi. Son utilisation permet un développement collaboratif, sécurisé et pérenne.

Symfony 2 s’impose de plus en plus comme le framework PHP de référence dans le monde du web et les développements de grosse ampleur. De plus en plus de grosses plateformes telles que : Dailymotion, Delicious  Lafourchette, ou même Youporn choisissent Symfony 2 pour supporter leur affluence monstrueuse ainsi que leurs développements.

Nous ne faisons pas exception : nous adorons Symfony.

 

Une nouvelle version majeure

Symfony connaît de nouveau une évolution majeure, passant de sa version 2 à 3, accessible depuis novembre 2015.

Certains développeurs et la plupart des gestionnaires de projets ont peur quand des versions majeures de leurs bibliothèques Open-Source préférées sont annoncées; probablement parce que les versions majeures sont associées à des changements incompatibles arriérés.

Beaucoup de questions se posent :

  – Est-ce que les changements apportent une valeur significative pour mon projet ?

  – La feuille de route est-elle suffisamment claire pour anticiper la mise à niveau ?

  – Est-ce facile de mettre à niveau ?

  – Que faire si je ne veux pas ou ne peux pas mettre à niveau maintenant ?

  – Combien de temps cela va prendre ?

 

La crainte des nouvelles versions majeures repose sur de mauvaises expériences du passé. Dans le monde de Symfony, Symfony 2 représente aussi une grande révolution car cette version est très différente de Symfony 1, et a causé beaucoup de problèmes aux projets souhaitant faire la migration.

Symfony 3 rend donc les gens nerveux de devoir à nouveau faire une migration dans la douleur.

Mais, pas de panique, Fabien Patencier (Responsable du projet Symfony), nous rassure sur le fait que ce sera plus facile et qu’on peut s’y atteler dès maintenant.

 

Qu’est ce que Symfony 3.0 ?

Tout d’abord, chacun sait que les grandes versions doivent se produire sur une base régulière. Il faut être en mesure de briser la compatibilité et de supprimer des fonctionnalités obsolètes, corriger l’architecture et de prendre en compte les changements dans l’écosystème : nouvelles fonctionnalités de PHP, meilleurs changements de pratiques, de nouveaux paradigmes web, …

L’Internet évolue à un rythme très rapide et si Symfony ne peut s’adapter assez vite, il deviendra vite obsolète.

De nouvelles fonctionnalités sont ajoutées tout le temps dans les versions mineures et parce que certaines autres sont obsolètes, vous pouvez commencer à faire évoluer votre code « plus compatible » avec 3.0 aujourd’hui en lisant le guide de mise à niveau pour Symfony 3.0 et en effectuant les modifications proposées en option vous permettant de planifier la migration à l’avance et à votre rythme.

Symfony 3.0 ne va donc pas être une révolution et l’architecture de bas niveau du cadre ne changera pas. Voici quelques exemples simples de changements proposés dans Symfony 2.x et qui feront de Symfony 3.0 une version bien meilleure :

 

    – Symfony 3.0 est plus standard

    – Symfony 3.0 corrige quelques erreurs d’architecture (les assistants de la console stateful sont retirés au profit de meilleures alternatives (ProgressBar vs ProgressHelper ou Tableau vs TableHelper; Yaml :: parse () ne supporte plus les noms de fichiers, …)

    – Symfony 3.0 est plus découplé et plus que jamais réutilisable (l’HttpKernel va être divisé en plusieurs petits – le profileur par exemple sera autonome ; les classes sont déplacées à partir de faisceaux à composants ; les composants sont extraits de celles déjà existantes, … )

    – Symfony 3.0 ajoutera de nouvelles fonctionnalités telles que : l’Autowiring, le Polyfilling ou encore le Guard Security.

Plus familièrement, Symfony 3 sera un Symfony 2+.

 

Symfony3, c’est pour quand ?

Comme vu plus haut, Symfony 3 débute dès maintenant, en mettant à jour votre Symfony 2.

La version 2.8 (disponible depuis novembre 2015) sera la dernière LTS de Symfony 2, et devrait être maintenue jusqu’à fin 2018.

Il n’y aura pas de version 2.9 et la première version en LTS de Symfony 3 sera disponible, selon la feuille de route, en mai 2017.

La version de PHP minimale pour accueillir Symfony 3 sera PHP 5.5. Fabien Potencier souhaite néanmoins évoluer sur PHP 5.6 l’année suivante pour répondre aux besoins des développeurs mais également pour se calquer sur les différentes infrastructures mises en place par les sociétés d’hébergement.release process 1024x591 Symfony 3

Si vous souhaitez contribuer au projet Symfony, tout est évidemment en open-source, disponible et forkable sur Github, ainsi que sur le listing des issues du projet.  Enjoy !

 

 

Sources :

https://www.wanadev.fr/symfony3-la-feuille-de-route/

http://symfony.com/blog/symfony-3-0-the-roadmap

http://symfony.com/doc/current/contributing/community/releases.html

Laisser un commentaire