Symfony 7 : développer une application web structurée
Apprendre à construire une application avec Symfony : routage, Twig, Doctrine, formulaires, sécurité et services.
- Durée
- 35 h · 5 jours
- Niveau
- Intermédiaire
- Format
- Présentiel · Distanciel · Mixte
- Effectif max.
- 12 participants
Présentation
Ce programme permet de devenir autonome sur Symfony 7. Il commence par une remise à niveau de la programmation objet en PHP, puis couvre le routage, les contrôleurs, Twig, Doctrine, les formulaires, la sécurité, l’injection de dépendances, les événements et les commandes console. Les participants construisent une application complète de bout en bout.
À qui s’adresse ce programme
- Développeurs PHP souhaitant adopter un framework
- Développeurs back-end issus d’autres langages
- Équipes qui migrent vers Symfony
Prérequis
- Bonne maîtrise du langage PHP
- Notions de SQL
Objectifs pédagogiques
- Installer un projet Symfony et comprendre sa structure
- Créer routes, contrôleurs et templates Twig
- Gérer les données avec Doctrine
- Construire formulaires et validations
- Sécuriser l’accès : authentification, rôles et voters
- Utiliser services, événements et commandes console
Programme détaillé
10 modules · 35 h · 5 jours
Remise à niveau : objet en PHP
- Classes, interfaces et relations
- Namespaces et autoload
- Gestion des erreurs et exceptions
- Typage et enums
- Composer
Concepts clés de Symfony
- Architecture et philosophie du framework
- Structure d’un projet
- Routes et contrôleurs
- Environnements et configuration
- Débogage avec la barre de profilage
Créer plusieurs pages statiques avec contrôleurs.
Twig et données avec Doctrine
- Syntaxe Twig, héritage et composants
- Entités, migrations et fixtures
- Requêtes Doctrine
- Relations entre entités
- Pagination
Afficher et gérer des entités en base de données.
Routage avancé et assets
- Paramètres, contraintes et priorités des routes
- Génération d’URL
- Gestion des assets
- Structures et filtres Twig
- Pages d’erreur personnalisées
Formulaires
- Types de formulaires
- Validation avec contraintes
- Formulaires liés à une entité
- Téléversement de fichiers
- Thèmes de formulaire
Générer et personnaliser un CRUD.
Introduction à la sécurité
- Pare-feu et fournisseurs d’utilisateurs
- Inscription et connexion
- Hachage des mots de passe
- Contrôle d’accès par route
- Protection CSRF
Services et injection de dépendances
- Conteneur de services
- Autowiring et configuration
- Créer ses propres services
- Client HTTP pour appeler des API
- Paramètres et variables d’environnement
Événements
- Dispatcher d’événements
- Écouteurs et abonnés
- Événements du noyau
- Envoi d’e-mails et notifications
- Bonnes pratiques
Ajouter des traitements déclenchés par des événements.
Autorisations : rôles et voters
- Hiérarchie de rôles
- Vérifier les droits dans les contrôleurs et Twig
- Voters personnalisés
- Tests de sécurité
- Audit des accès
Protéger un espace d’administration avec des voters.
Commandes console et finalisation
- Créer des commandes console
- Tâches planifiées
- Tests fonctionnels
- Déploiement : checklist
- Bilan et pistes
Présenter l’application et ses choix techniques.
Outils et technologies
Méthodes pédagogiques
- Alternance d’exposés courts et de travaux pratiques
- Démonstrations en direct par le formateur
- Projet fil rouge construit au fil des modules
- Corrections collectives et échanges sur les bonnes pratiques
Évaluation
- Exercices pratiques corrigés à chaque module
- Mini-projet réalisé en fin de formation
- Quiz de validation des acquis
Matériel requis
- Un ordinateur avec une connexion internet
- PHP 8, Composer, l’outil en ligne de commande Symfony et un serveur de base de données
Ressources fournies
- Support de cours et dépôt d’exercices corrigés
Débouchés
- Une application Symfony sécurisée avec base de données
- Une méthode de travail en framework
- Capacité à poursuivre en autonomie
Les cours vidéo associés
Mes cours en vidéo qui accompagnent ce programme : pour préparer la formation ou réviser ensuite. Accès gratuit avec un compte.


