Formation : Symfony 6.4 – Développement de sites web Back End

Dernière mise à jour : 28 janvier 2025

 

Découvrez notre formation Symfony, idéale pour maîtriser le framework Symfony et concevoir des applications performantes. Au programme : gestion des entités, création d’API REST, sécurisation des projets et intégration avancée avec Twig. Destinée aux développeurs ayant des bases en PHP, cette formation vous permettra de créer des sites web robustes, modulaires et évolutifs. Apprenez à exploiter les outils phares de Symfony pour un développement efficace et en phase avec les exigences modernes. Inscrivez-vous et boostez vos compétences en programmation back-end. La formation est composée de vidéos de cours et de démonstrations d’une durée totale de 27h, ainsi que d’un ensemble de travaux pratiques dont la durée de réalisation est évaluée à 26h45.

Objectifs pédagogiques

  • Configurer un environnement de développement Symfony

  • Maîtriser le routage et les contrôleurs

  • Utiliser Twig pour la gestion des vues

  • Gérer les données avec Doctrine

  • Concevoir et traiter des formulaires

  • Assurer la sécurité d’une application Symfony

  • Créer et utiliser des services Symfony

  • Développer et sécuriser des APIs

  • Tester et déployer une application Symfony

  • Utiliser les fonctionnalités avancées tels que les Voters pour la gestion des permissions et le composant Console pour créer des commandes personnalisées

Public concerné

Développeur PHP

Prérequis

Avoir une bonne connaissance du langage PHP, de HTML et CSS, ainsi que des notions de système de gestion de base de données relationnelles, ou avoir suivi la formation Développement de sites Web Backend avec PHP.

Programme détaillé

Introduction (1h25)

  • Présentation de Symfony
  • Prérequis à l’installation de Symfony
  • Démonstration – Configuration du serveur Web
  • Présentation de Composer
  • Démonstration – Installation de Composer et Cmder
  • Choix d’un outil pour coder
  • Démonstration – Installation et configuration de PHPStorm
  • Symfony CLI
  • Démonstration – Installation de Symfony CLI
  • Création d’un projet Symfony
  • Démonstration – Création d’un projet Symfony
  • Les répertoires du projet
  • Utiliser Git avec Symfony
  • Démonstration – Symfony et Git
  • TP à réaliser

Hello World (45 min)

  • Les routes et les contrôleurs
  • Démonstration – Création d’un contrôleur et d’une route
  • Introduction au moteur de template Twig
  • Démonstration – Affichage d’un fichier Twig
  • TP à réaliser
  • Correction du TP

Vues et Twig (1h36)

  • Présentation de Twig
  • Les délimiteurs
  • Les balises
  • Démonstration – Délimiteurs et balises
  • Les filtres
  • Démonstration – Filtres
  • Blocs, héritage et inclusion
  • Démonstration – Blocs, héritage et inclusion
  • Gestion des assets et des URLs
  • Démonstration – Gestion des assets et des URLs
  • Passer des variables à la vue
  • Démonstration – Passer des variables à la vue
  • Les attaques XSS
  • Démonstration – Les attaques XSS
  • TP à réaliser
  • Correction du TP

Routage et contrôleurs (1h04)

  • Les routes
  • Les routes en attributs
  • Les routes et la console
  • Les contrôleurs
  • Démonstration – Les routes et les contrôleurs
  • Le débogage
  • Démonstration – Le débogage
  • TP à réaliser
  • Correction du TP

Données et Doctrine (2h24)

  • Les problèmes rencontrés avec les données
  • La configuration de Doctrine
  • Les entités
  • Démonstration – Créer une entité
  • L’EntityManager
  • Démonstration – L’EntityManager
  • Les fixtures
  • Démonstration – Les fixtures et Faker
  • Le Repository
  • Démonstration – Le Repository
  • DQL et QueryBuilder
  • Démonstration – DQL et QueryBuilder
  • TP à réaliser
  • Correction du TP1
  • Correction du TP2

Formulaires (3h06)

  • Présentation des formulaires
  • Classe de formulaire
  • Démonstration – Générer une classe de formulaire
  • Affichage d’un formulaire
  • Affichage d’un formulaire sous Twig
  • Démonstration – Afficher un formulaire
  • Utiliser un thème
  • Démonstration – Utiliser un thème dans un formulaire
  • Traitement d’un formulaire
  • Démonstration – Traiter un formulaire
  • Validation des données
  • Démonstration – Valider un formulaire
  • Sécurité : les attaques CSRF
  • Démonstration – Se protéger des attaques CSRF
  • TP à réaliser
  • Correction du TP1
  • Correction du TP2

Doctrine : les relations entre entités (2h15)

  • La relation ManyToOne/OneToMany
  • La relation ManyToMany
  • La relation OneToOne
  • Les relations entre objets PHP
  • Les relations avec Doctrine
  • Démonstration – Définir des relations entre entités
  • Utiliser des fixtures avec relations
  • Démonstration – Les fixtures avec relations
  • Récupérer une entité associée à une autre
  • Démonstration – Récupérer des entités associées
  • Manipuler les entités associées
  • Démonstration – Manipuler les entités associées
  • TP à réaliser
  • Correction du TP1
  • Correction du TP2

Utilisateurs et sécurité (3h44)

  • Le système de sécurité de Symfony
  • L’entité utilisateur
  • Démonstration – Créer l’entité utilisateur
  • Le système d’authentification
  • Démonstration – Le système d’authentification
  • Le formulaire d’inscription
  • Démonstration – Créer le formulaire d’inscription
  • Autorisation et rôles
  • Démonstration – Autorisations et rôles
  • Hiérarchisation des rôles
  • Démonstration – Hiérarchisation des rôles
  • Autres fonctionnalités de sécurité
  • Démonstration – Autres fonctionnalités de sécurité
  • TP à réaliser
  • Correction du TP1
  • Correction du TP2

Services (55 min)

  • Présentation des services
  • Démonstration – Créer un service
  • Injection de dépendances et conteneur de services
  • Démonstration – Ajouter des dépendances
  • TP à réaliser
  • Correction du TP1
  • Correction du TP2

API (3h56)

  • Une API, c’est quoi ?
  • Le protocole HTTP
  • Le format JSON
  • Postman
  • Démonstration – Postman (installation et présentation rapide)
  • Le composant Serializer
  • Démonstration – Manipuler une API existante
  • Créer une API
  • Démonstration – Créer une API simple
  • TP à réaliser
  • Correction du TP
  • API REST
  • Démonstration – Mise en place d’un CRUD
  • Valider les données
  • Démonstration – Valider les données dans une API
  • Le composant API Platform
  • Démonstration – Découverte d’API Platform
  • TP à réaliser
  • Correction du TP
  • La sécurité
  • JSON Web Token (JWT)
  • Démonstration – Mise en place d’une authentification JWT

Tests (3h06)

  • Présentation
  • Mise en place
  • Démonstration – Mise en place de l’environnement
  • Tests unitaires
  • Démonstration – Tests unitaires
  • Simuler des objets (stubs/mocks)
  • Démonstration – Mocker une dépendance
  • Tests d’intégration
  • Démonstration – Tests d’intégration
  • Tests fonctionnels
  • Démonstration – Tests fonctionnels ou d’application
  • Tests fonctionnels (API)
  • Démonstration – Tests fonctionnels (API)
  • Tests de bout en bout (E2E)
  • Démonstration – Tests de bout en bout (E2E)
  • Couverture de code
  • Démonstration – Couverture de code
  • Problématique de la base de test
  • TP à réaliser
  • Correction du TP

Déploiement (1h)

  • Les environnements de Symfony
  • Démonstration – Personnaliser les pages d’erreur
  • Déploiement
  • Pour aller plus loin
  • TP à réaliser
  • Correction du TP

Voter (40 min)

  • Objectifs du module
  • Pourquoi utiliser les Voters ?
  • Création d’un Voter
  • Utilisation dans un contrôleur avec un attribut
  • Changer le message et le code statut dans un contrôleur
  • Utilisation dans un fichier Twig
  • Démonstration – Création et utilisation d’un Voter
  • TP à réaliser
  • Correction du TP
  • Conclusion

Le composant Console (1h05)

  • Le composant Console
  • Console Output
  • Console Input
  • Question Helper
  • Démonstration – Création d’une commande de type console
  • TP à réaliser
  • Correction du TP
  • Bonus : un crawler en mode console
Délais d'accès à la formation

Les inscriptions sont possibles jusqu'à 48 heures avant le début de la formation.

Dans le cas d'une formation financée par le CPF, ENI Service est tenu de respecter un délai minimum obligatoire de 11 jours ouvrés entre la date d'envoi de sa proposition et la date de début de la formation.

Modalités et moyens pédagogiques, techniques et d'encadrement

Formation accessible à distance pendant 3 mois, de n'importe où et n'importe quand, via un ordinateur type PC disposant d'une connexion à Internet à haut débit (ADSL ou plus).

Pendant toute la durée de la formation, le stagiaire dispose d'une assistance technique et pédagogique illimitée, par e-mail, assurée par notre équipe basée en France métropolitaine, avec un délai de prise en compte et de traitement qui n'excède pas 24h. En complément, le stagiaire peut planifier jusqu'à deux rendez-vous pédagogiques avec un formateur expert afin d'échanger sur des éléments de la formation.

La durée de la formation affichée sur cette page est une durée estimée qui peut varier en fonction du profil du stagiaire et de ses objectifs (notamment s'il souhaite valider sa formation par le passage d'un examen de certification).

Le portail de formation, donne accès à un ou des parcours de formation composés :

  • Des vidéos de la formation, organisées en modules et en séquences découpées le plus finement possible, en suivant le programme pédagogique détaillé sur cette page ;
  • Des énoncés et corrigés de travaux pratiques à réaliser tout au long de la formation ;
  • D'une plateforme de travaux pratiques en ligne, contenant les logiciels nécessaire à la réalisation de l'ensemble des travaux pratiques ;
  • Des quiz de validation des connaissances acquises ;
  • D'un ou plusieurs livres numériques faisant office d'ouvrage(s) de référence sur le thème de la formation.
Modalités d'évaluation des acquis

L’évaluation des acquis se fait tout au long de la formation au travers des différents travaux pratiques réalisés par le stagiaire.

En complément, pour les stagiaires qui le souhaitent, certaines formations peuvent être validées officiellement par un examen de certification. Pour les formations concernées, l’examen est mentionné dans la section « Certification » du programme de formation.

Les candidats à la certification doivent produire un travail personnel important en vue de se présenter au passage de l'examen, le seul suivi de la formation ne constitue pas un élément suffisant pour garantir un bon résultat et/ou l'obtention de la certification.

Moyens de suivi d'exécution et appréciation des résultats

  • Évaluation qualitative de fin de formation, qui est ensuite analysée par l’équipe pédagogique ENI.
  • Attestation de suivi de formation remise au stagiaire par courrier électronique.
  • A la demande, certificat de réalisation.
Qualification du formateur

La formation est animée par un professionnel de l’informatique et de la pédagogie, dont les compétences techniques, professionnelles et pédagogiques ont été validées par des certifications et/ou testées et approuvées par les éditeurs et/ou notre équipe pédagogique.

Il est en veille technologique permanente et possède plusieurs années d’expérience sur les produits, technologies et méthodes enseignés.

Accessibilité de la formation

ENI Service s'engage en faveur de l'accessibilité pour les personnes en situation de handicap (PSH). Toutes nos formations sont ainsi accessibles aux PSH. Pour en savoir plus, nous vous invitons à consulter la page Accueil des personnes en situation de handicap de notre site internet.

FORMATIONS ASSOCIÉES