Symfony 6 - Développement Web (Démarrer + Maîtriser)
Prérequis
Public admis
- Salarié en Poste
- Entreprise
Demandeur d'emploi et Etudiant non admis
Financement
- Votre OPCO
- Financement personnel
Financement CPF non pris en charge
Modalités
- En centre
- À distance
Objectifs pédagogiques
A l'issue de cette formation, vous serez capable de :
- Décrire tous les concepts importants de Symfony
- Mettre en oeuvre, de l'installation à l'affichage, vos premières pages Web dynamiques avec Twig, en passant par les formulaires, la sécurité et le cache HTTP
- Utiliser et gérer tous les outils majeurs de Symfony afin de devenir entièrement autonome avec le framework.
Programme de la formation
Jour 1 - Rappels PHP pour Symfony
Quel EDI ?
Evolution de la POO (Programmation Orientée Objet) PHP
- Historique de la POO PHP
- PSR
Bases de la POO
- Qu'est-ce que la POO ?
- Anatomie d'une classe
- Types PHP
Concepts avancés de POO
- Héritage en POO
- Static et constantes
- Interfaces
- Classes abstraites
- Traits
- Méthodes magiques
Exceptions et erreurs
Relation entre les classes
- Héritage
- Implémentation
- Association
- Agrégation
- Composition
Espaces de noms
Autoload
Jour 2
Introduction
- Vue globale du projet Symfony, avec :
- Sa licence
- Ses versions
- Son rythme de sortie
- Sa direction globale
- Une liste de composants comme illustration de choses faisables avec le framework
- Environnement de travail et outil "Symfony" dédié ligne de commandes
- Création d'un projet Symfony
Découverte de Symfony
- Comment gérer le flux HTTP de requête / réponse
- Créer votre première page Web
- Affiner les routes de votre application avec des paramètres et des contraintes
- Bonnes pratiques concernant vos contrôleurs et leurs capacités
Introduction aux tests fonctionnels
- Introduction aux tests automatisés et aux tests fonctionnels
- Installation et présentation de l'outil "PHPUnit" pour exécuter vos tests automatisés
- Ecrire son premier test pour vérifier un code statut d'une page Web donnée
- Créer un "Data Provider" pour fournir des URL à analyser successivement dans un test
Rendu graphique avec Twig
- Introduction à Twig
- Syntaxe primitive de Twig
- Utiliser la syntaxe utile "." pour extraire des valeurs d'une structure
- Transmettre un contexte à vos templates depuis vos contrôleurs
- Créer des itérations sur des données
- Tester certaines conditions pour formater vos pages Web
- Utiliser des techniques de layout avec de l'héritage et les inclusions de templates pour réduire la taille de vos templates
- Bonnes solutions pour trouver de l'aide pour vos templates à travers la console de Symfony ou le profileur Web
- Créer des URL dynamiques dans vos templates pour accéder à d'autres pages Web ou pour associer un asset (image, css, js…)
Assets Web avec Webpack Encore
- Brève introduction à Webpack Encore et Yarn
- Installation et configuration du bundle nécessaire
- Optimiser vos assets avec Webpack Encore
Jour 3
Introduction à Doctrine
- Introduction à l'ORM de Doctrine et configuration de votre projet pour atteindre votre base de données
- Créer vos entités et leur configuration avec "Symfony Maker"
- Créer et appliquer des migrations pour gérer l'état de votre base de données
- Etablir et gérer les relations entre 2 entités
- Stocker des enregistrements en base de données en utilisant un contrôleur
- Récupérer des enregistrements de la base de données par des requêtes standards ou personnalisées
Formulaires
- Introduction aux formulaires de Symfony
- Créer vos formulaires avec des configurations sur-mesure
- Extraire et gérer les données de vos formulaires
- Mettre en place des contraintes natives pour valider les données provenant de l'utilisateur
Jour 4
Services
- Introduction à l'injection de dépendances et aux services de Symfony
- Utiliser la meilleure manière pour déterminer les services disponibles
- Utiliser "l'autowiring" pour injecter des dépendances dans un constructeur, un setter ou un attribut
- Vérifier la configuration de vos services
- Comprendre la limite entre les paramètres des services et les variables d'environnement
Console
- Introduction aux commandes, et comment créer et optimiser des commandes interactives, des commandes batch...
- Ecrire sa première commande
- Utiliser des outils de "Symfony Style" pour vous faciliter la vie
- Déclarer et gérer des options et arguments dans votre commande
Jour 5
Sécurité
- Introduction à l'authentification et à l'autorisation dans un projet Symfony
- Créer votre authentificateur sur-mesure grâce à "Security"
- Vérifier les rôles de vos utilisateurs pour les laisser accéder à certaines ressources de l'application
- Créer des voteurs personnalisés pour gérer de rares situations qui nécessitent une vérification particulière en PHP
Evénements
- Introduction aux événements et comment les propager dans un projet Symfony
- Créer des "subscribers" pour déclarer des "listeners"
- Liste d'événements importants à connaître dans une application Symfony
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des contrôles de connaissances sous forme de QCM
Les + de la formation
Cette formation combine les deux cours : SYMF6-N1 "Symfony 6 - Démarrer" et SYMF6-N2 "Symfony 6 - Maîtriser" et couvre tous les concepts importants de Symfony.
Les supports de cours sont en anglais.
En complément de la formation en présentiel, l'accès à la plateforme de révision en ligne pendant 1 mois permet d'associer différentes pratiques d'apprentissage, de tester vos compétences, de suivre votre progression et de rester en contact avec le formateur sur toute la durée du programme.

Proposé par
M2I
"Un leadership dans le domaine de la formation"

Proposé par
M2I
