Symfony est un framework PHP dont la première version est sortie en 2005 et la seconde en 2011. Les téléchargements de Symfony ont passé la barre des 500 millions en 2016, le milliard en 2017 et l’horizon des dix milliards de téléchargements se rapproche.

# Sa notoriété et la taille de la communauté

Symfony, c’est : 

  • L’un des frameworks leaders pour les développements PHP
  • Une communauté mondiale de plusieurs milliers de contributeurs (intégrateurs, développeurs Symfony mais aussi issus des communautés eZPublish ou Drupal) qui participent activement à la croissance de Symfony (documentation, création de bundles, optimisation du code, support, etc. )
  • De nombreux outils Open Source qui gravitent autour du projet Symfony et en utilisent certains composants (Doctrine, Monolog, Composer…)
  • Une capacité d’adaptation et d’évolution constante
  • Une documentation abondante, traduite en plusieurs langues et mise à jour quotidiennement par toute la communauté : des centaines de blogs, des tutoriels pour tous les niveaux, etc.

# Ses références

Symfony, c’est :

  • Des millions de sites et d’applications développés à travers le monde : Intranets, sites grand public, réseaux sociaux, sites communautaires, applications de gestion et de workflow…
  • Des références prestigieuses parmi lesquelles Spotify, France Télévisions, Auchan, LaFourchette, ezPublish, BBC News, Drupal, Pepsi, American Express, New York Times, M6Web, TF1…

# Sa philosophie

Derrière l’origine d’un projet se cache avant tout la réponse à un besoin initial. Ici, celui de capitaliser sur les connaissances et les outils à long terme afin de concentrer ses efforts sur les vrais enjeux métiers sans avoir à réinventer la roue à chaque nouveau projet.

# Sa licence d’exploitation

La notion de licence peut avoir un impact non négligeable sur votre application : conditions d’exécution et d’usage, droit de modification du code source, etc.

Symfony, c’est :

  • Distribué sous licence Open Source MIT
  • Modification autorisée de tout ou partie du code source
  • Aucune obligation de viralité, autrement dit de redistribution du code à l’Open Source
  • Usage autorisé dans des applications commerciales propriétaires

# Sa stabilité et pérennité

Choisir une solution immédiatement opérationnelle ; mais aussi qui soit robuste sur le long terme. Un framework doit garantir la longévité de votre application, en termes de maintenance comme d’évolutions.

Symfony, c’est :

  • Un code structuré respectant les bonnes pratiques de programmation
  • Une interopérabilité de fait avec les standards PHP
  • Une structure modulaire pour faciliter l’ajout, la modification ou la suppression de fonctionnalités
  • Une roadmap clairement établie (2 versions mineures par an, 1 version LTS tous les 2 ans)
  • Une version LTS (Long Term Support) supportée pendant 4 ans (4 ans pour les failles de sécurité et 3 ans pour la correction de bugs)
  • Une compatibilité garantie lors des montées en version

# Sa sécurité

Toute application est potentiellement exposée à des attaques malveillantes. Pour minimiser les risques, il est toujours préférable de choisir un framework capable de prendre en compte et contrer les principales menaces.

Symfony, c’est :

  • Une protection « par défaut » où le principe de précaution prévaut (tout est verrouillé… sauf les éléments nécessitant un déblocage)
  • La détection et la correction de failles de sécurité plus rapides que pour un code propriétaire
  • La gestion des vulnérabilités les plus courantes (XSS, CSRF et injection SQL)
  • La mise à disposition de l’outil gratuit Symfony Security Checker pour vérifier si votre application utilise des dépendances présentant des failles de sécurité connues

# Certifications et engagements

Mathieu, développeur sénior au sein de notre équipe Web, Extranet et E-commerce est certifié Symfony et nous bénéficions d’accès à la plateforme Sensiolab pour préparer la certification de nouveaux Atolien-nes 🙂 À suivre en 2022 !

# Les nouveautés de Symfony 6

Symfony 6 est désormais basé sur la version 8.0 de PHP qui devient la version minimale requise. Cela permet donc de bénéficier de toutes les nouvelles normes et fonctionnalités de PHP en se débarrassant du code déprécié.

En bref :

  • Support des énumérations PHP
  • Auto-complétion de la console
  • Attributs de validation imbriqués
  • Indications de type
  • Changement dans les contrôleurs
  • Reconnaissance automatique de la langue

# Quelques exemples de projets réalisés par nos équipes