SF7PACK5J | Développement Web avec Symfony 7
- SensioLabs University a conçu la meilleure expérience de formation Symfony en associant le présentiel et le eLearning. En complément de la formation en présentiel, l'accès à notre plateforme de révision en ligne pendant 1 mois, permet d’associer différentes pratiques d’apprentissage, de tester ses compétences, de suivre sa progression et de rester en contact avec son formateur sur toute la durée du programme.
-
Prérequis
Maîtrise du langage PHP -
Objectifs
Cette formation combine les deux modules « SF7START / Démarrer avec Symfony 7 » et « SF7MASTER / Maîtrise de Symfony 7 » et couvre tous les concepts importants de Symfony. De l'installation à l'affichage de vos premières pages web dynamiques avec Twig, en passant par les formulaires, la sécurité et le cache HTTP, vous apprendrez à utiliser et maîtriser tous les outils majeurs de Symfony afin de devenir entièrement autonome avec le framework. Bien plus qu'une simple formation à Symfony 7, ce cursus est animé par des instructeurs experts et contributeurs à Symfony qui partageront avec vous leurs meilleures pratiques ainsi que leurs trucs et astuces !
Programme détaillé
Supports mis à jour en février 2024
POO avec PHP
- Programmation orientée objet en PHP – rappel des bases
- Les Classes, interfaces, et l’héritage en PHP
- Relations entre les classes
- Gestion des erreurs
Introduction à Symfony
- Vue globale du projet Symfony, avec sa licence, ses versions, son rythme de sortie
- Environnement de travail et outil « symfony » dédié ligne de commandes
- Création d’un projet Symfony
- Debug de Symfony : le Profiler et la Toolbar
Créer des pages statiques
- Comment gérer le flux HTTP de requête - réponse
- Créer votre première page Web
- Routing dans Symfony et création de routes statiques, contrôle des méthodes HTTP
- Bonnes pratiques concernant vos contrôleurs et leurs capacités
- Syntaxe de base et héritage dans Twig
Gérer ses données avec 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
- Établir et gérer les relations entre 2 entités
- Stocker des enregistrements en base de données en utilisant un contrôleur ou un « fixture » de Doctrine dans le cadre de tests automatisés.
- Récupérer des enregistrements de la base de données par des requêtes standard ou Introduction aux tests automatisés et aux tests fonctionnels
Dynamiser vos pages
- Routing complémentaires : paramètres de routing, ‘requirements’et valeurs par défaut
- Transmettre et afficher des variables dans un template Twig
- Syntaxe complémentaire de Twig : les structures de contrôle
- Fonctions et filtres dans Twig
Gérer vos ressources avec AssetMapper
- Le composant AssetMapper, introduction
- Ajouter du CSS externe grâce à AssetMapper
Gérer les entrées utilisateur
- Introduction aux formulaires de Symfony Form
- 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
Introduction à la sécurité
- Comprendre la sécurité dans les applications Symfony
- Mettre en place une authentification simple par formulaire de login
Obtenir des données à distance
- Introduction au composant HttpClient
- Préparer ses requêtes grâce aux ScopedClients
Organiser votre code
- Les environnements dans Symfony
- 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 attribute
- Compléter un service grâce à la « décoration »
Découpler son code
- Introduction aux évènements et comment les propager dans un projet Symfony
- Créer des « subscribers » et « listeners »
- Liste d’évènements importants à connaître dans une application Symfony
Sécurisez votre application
- Introduction à l’autorisation dans un projet Symfony
- 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
Sérialiser ses données
- Introduction au fonctionnement du composant Serializer
- Les contextes et groupes de sérialisation
- Normalisation des données complexes
- Créer un normalizer personnalisé
Plateforme de révision en ligne - 1 mois d'accès
- Test quotidien
- Documentations
Programme horaire
Jour 1
-
MATIN
POO avec PHP
- Programmation orientée objet en PHP – rappel des bases
- Les Classes, interfaces, et l’héritage en PHP
-
APRES-MIDI
POO avec PHP
- Relations entre les classes
- Gestion des erreurs
Jour 2
-
MATIN
Introduction à Symfony
- Vue globale du projet Symfony, avec sa licence, ses versions, son rythme de sortie
- Environnement de travail et outil « symfony » dédié ligne de commandes
- Création d’un projet Symfony
- Debug de Symfony : le Profiler et la Toolbar
Créer des pages statiques
- Comment gérer le flux HTTP de requête - réponse
- Créer votre première page Web
- Routing dans Symfony et création de routes statiques, contrôle des méthodes HTTP
- Bonnes pratiques concernant vos contrôleurs et leurs capacités
- Syntaxe de base et héritage dans Twig
-
APRES-MIDI
Gérer ses données avec 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
- Établir et gérer les relations entre 2 entités
- Stocker des enregistrements en base de données en utilisant un contrôleur ou un « fixture » de Doctrine dans le cadre de tests automatisés.
- Récupérer des enregistrements de la base de données par des requêtes standard ou Introduction aux tests automatisés et aux tests fonctionnels
Jour 3
-
MATIN
Dynamiser vos pages
- Routing complémentaires : paramètres de routing, ‘requirements’et valeurs par défaut
- Transmettre et afficher des variables dans un template Twig
- Syntaxe complémentaire de Twig : les structures de contrôle
- Fonctions et filtres dans Twig
Gérer vos ressources avec AssetMapper
- Le composant AssetMapper, introduction
- Ajouter du CSS externe grâce à AssetMapper
-
APRES-MIDI
Gérer les entrées utilisateur- Introduction aux formulaires de Symfony Form
- 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
Introduction à la sécurité
- Comprendre la sécurité dans les applications Symfony
- Mettre en place une authentification simple par formulaire de login
Jour 4
-
MATIN
Obtenir des données à distance
- Introduction au composant HttpClient
- Préparer ses requêtes grâce aux ScopedClients
Organiser votre code
- Les environnements dans Symfony
- 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 attribute
- Compléter un service grâce à la « décoration »
-
APRES-MIDI
Découpler son code
- Introduction aux évènements et comment les propager dans un projet Symfony
- Créer des « subscribers » et « listeners »
- Liste d’évènements importants à connaître dans une application Symfony
Jour 5
-
MATIN
Sécurisez votre application
- Introduction à l’autorisation dans un projet Symfony
- 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
-
APRES-MIDI
Sérialiser ses données
- Introduction au fonctionnement du composant Serializer
- Les contextes et groupes de sérialisation
- Normalisation des données complexes
- Créer un normalizer personnalisé
Appréciation de la formation
Moyenne globale : 4,7/5
- Evaluation de la pédagogie : 4,8/5
- Evaluation du contenu : 4,7/5
- Evaluation du rythme : 4,5/5
Modalités pédagogiques et techniques
Notre cursus est conçu selon les principes suivant :
· Répartition du temps d’apprentissage entre 40% de théorie & 60% de pratique
· Mise en pratique par l’exercice
· Échanges réguliers avec le formateur et les participants. Pas plus de 10 personnes par session.
Supports pédagogiques : le formateur partagera les supports de cours. Ils sont en anglais, mais le formateur parle français.
Pour les sessions à distance, les formations seront enregistrées et les vidéos seront disponibles sur une plateforme de révisions pendant 1 mois.
Matériel pédagogique : mise à disposition de l’ensemble du matériel collaboratif.
Technologie : Pour les formations à distance, un lien GoogleMeet est utilisé pour la projection du support de formation et pour soutenir les exercices pratiques.
Apprenant en situation de handicap, nous sommes à vos côtés pour identifier les aménagements les plus adaptés des modalités et des supports pédagogiques ou les aides humaines pertinentes.
Pour plus d’informations, contactez notre référent handicap : laurent.vaquette@sensiolabs.com / 01 86 65 72 25
Modalités évaluatives
- Un contrôle de connaissances sous forme de QCM est réalisé pendant et à l’issue de la formation. Il permet de valider et de reprendre les points non assimilés.
- Un certificat de réalisation d’une action de formation est transmis à l’apprenant.
- Une copie de la feuille d’émargement est transmise au commanditaire.
Modalités d'inscription
- Une commande doit être formulée via le formulaire d’inscription sur notre site, via le mail Training ou par téléphone.
- L’inscription sera définitive après réception du devis signé et d’un paiement intégral ou d’un accord de prise en charge d’un OPCO, avant le début de la formation.
- Télécharger le livret d’Accueil
-
Durée
5 jour(s)
-
Niveau
Débutant
-
Langues disponibles
Français, Anglais, Allemand -
Pays disponibles
Monde, France, Allemagne, Espagne, Royaume-Uni, États-Unis
-
Du 13/01
au 17/01/25Paris
France2 490,00 € -
Du 10/02
au 14/02/25Paris
France2 490,00 € -
Du 10/03
au 14/03/25Paris
France2 490,00 € -
Du 07/04
au 11/04/25Paris
France2 490,00 € -
Du 12/05
au 16/05/25Paris
France2 490,00 € -
Du 02/06
au 06/06/25Paris
France2 490,00 € -
Du 07/07
au 11/07/25Paris
France2 490,00 € -
Du 04/08
au 08/08/25Paris
France2 490,00 € -
Du 08/09
au 12/09/25Paris
France2 490,00 € -
Du 06/10
au 10/10/25Paris
France2 490,00 € -
Du 03/11
au 07/11/25Paris
France2 490,00 € -
Du 08/12
au 12/12/25Paris
France2 490,00 €
Vous n'êtes pas disponible à ces périodes ? Nous organisons des sessions de formation sur mesure, n'hésitez pas à nous contacter pour plus d'informations !