Symfony est aujourd’hui l’un des frameworks PHP les plus utilisés pour développer des applications web performantes, robustes et maintenables. Cette formation avancée s’adresse aux développeurs souhaitant approfondir leur maîtrise du framework et adopter les bonnes pratiques utilisées dans les projets professionnels.
Au cours de cette formation, vous apprendrez à concevoir des architectures applicatives avancées, à exploiter les composants clés de Symfony (Messenger, Security, Event Dispatcher, API), à améliorer la qualité et les performances de vos applications, ainsi qu’à mettre en place des tests automatisés et des processus d’industrialisation.
Grâce à de nombreux travaux pratiques, vous développerez les compétences nécessaires pour concevoir et maintenir des applications Symfony modernes, sécurisées et évolutives.
Objectifs pédagogiques
Maîtriser les fonctionnalités avancées de Symfony.
Concevoir une architecture applicative robuste et maintenable.
Optimiser les performances et la qualité du code.
Mettre en œuvre les bonnes pratiques de développement avec Symfony.
Automatiser les tests et sécuriser leurs applications.
Exploiter les composants avancés de l’écosystème Symfony.
Formation Symfony avancée
en détail
Programme
Jour 1 – Architecture et bonnes pratiques Symfony
Rappels et nouveautés de Symfony
Les évolutions récentes du framework.
Les bonnes pratiques recommandées.
Organisation d’un projet Symfony moderne.
Architecture applicative
Architecture en couches.
Séparation des responsabilités.
Utilisation des services et de l’injection de dépendances.
Configuration avancée du conteneur de services.
Design patterns avec Symfony
Repository Pattern.
Factory Pattern.
DTO (Data Transfer Objects).
Value Objects.
Services métiers.
Gestion de la configuration
Variables d’environnement.
Paramètres et configuration multi-environnements.
Gestion des secrets avec Symfony Secrets.
Jour 2 – Fonctionnalités avancées du framework
Event Dispatcher et Event Subscribers
Comprendre le cycle de vie d’une requête.
Création d’événements personnalisés.
Mise en œuvre des Event Subscribers.
Messenger
Introduction au composant Messenger.
Bus de messages.
Traitements synchrones et asynchrones.
Gestion des files de messages.
Utilisation avec RabbitMQ ou Redis.
API avec Symfony
Création d’API REST.
Sérialisation des données.
Gestion des DTO.
Validation des données.
Gestion des erreurs.
Sécurité avancée
Authentification et autorisation.
Voters.
Gestion des rôles.
Sécurisation des API.
Bonnes pratiques de sécurité.
Jour 3 – Qualité, tests et performances
Tests automatisés
PHPUnit.
Tests unitaires.
Tests fonctionnels.
Mocking et bonnes pratiques.
Couverture de code.
Qualité de code
PHPStan.
PHP-CS-Fixer.
Rector.
Analyse statique du code.
Respect des standards PSR.
Optimisation des performances
Gestion du cache.
Cache HTTP.
Cache Symfony.
Profiling avec le Web Profiler.
Optimisation des requêtes Doctrine.
Doctrine avancé
Relations complexes.
Requêtes optimisées.
Repository personnalisés.
Gestion des migrations.
Performance et pagination.
Jour 4 – Industrialisation et déploiement (optionnel)
Industrialisation des projets
Structuration d’un projet Symfony en équipe.
Gestion des dépendances.
Versionnement des bases de données.
Intégration continue
Mise en place d’une chaîne CI/CD.
Automatisation des tests.
Vérification de la qualité du code.
Déploiements automatisés.
Docker et Symfony
Utilisation de Docker en développement.
Configuration d’un environnement complet.
Bonnes pratiques.
Déploiement et supervision
Préparation d’un environnement de production.
Gestion des logs.
Monitoring et supervision.
Sécurisation des déploiements.
Travaux pratiques
Tout au long de la formation, les participants développeront et feront évoluer une application Symfony en mettant en œuvre les différentes notions abordées :
Architecture métier avancée.
Mise en place d’une API sécurisée.
Traitements asynchrones avec Messenger.
Tests automatisés.
Optimisation des performances.
Industrialisation et déploiement de l’application.
Public et pré-requis
Public
Développeurs PHP maîtrisant les fondamentaux de Symfony et souhaitant approfondir leurs compétences sur le framework.
Pré-requis
Bonne maîtrise de PHP (PHP 8+).
Connaissance des bases de Symfony (routing, contrôleurs, formulaires, Doctrine, Twig).
Utilisation courante de Composer et Git.
Personne en situation de handicap
Pour toutes questions relatives à l’accueil d’un participant présentant un handicap, merci de nous contacter préalablement avant toute inscription
Ingénierie pédagogique
Moyens pédagogiques et techniques
Les supports de cours (slides) seront disponibles en ligne et distribués en début de formation (à l’aide d’un lien vers notre outil interne ou d’une version numérisée), puis fournis au format électronique à la fin de la formation
Une salle de formation équipée d’une connexion Internet, d’un vidéoprojecteur, paperboard. Ou une salle virtuelle pour les formations à distance (FOAD).
Un ordinateur par stagiaire avec un système d’exploitation installé et les outils nécessaires.
Modalités de suivi de l’exécution du programme
Durant la formation: alternance d’apports théoriques (30% du cours), d’exercices pratiques et de mise en situation sous forme de travaux pratiques corrigés avec l’expert-formateur
En fin de formation: évaluation à chaud sur l’atteinte des objectifs pédagogiques sous forme de tour de table et de test de connaissances, d’exercices, de QCM
Moyens d’encadrement
Formation assurée par un expert-formateur PHP – Symfony ayant une expérience significative.
Nos experts
Lonny Loquesol
Développeur PHP-Symfony
Nantes
Simon Mellerin
Développeur PHP Symfony & Vue.js
Nantes
Demander des informations sur la formation Formation Symfony avancée