Formation Symfony
Symfony est un framework de développement PHP qui vise à fournir aux développeurs un cadre de travail structuré pour créer des applications Web. Il inclut un ensemble de bibliothèques et d'outils qui facilitent la création et l'organisation du code, ainsi que l'intégration de différentes technologies et services. Symfony est conçu pour être modulaire, ce qui signifie qu'il est possible de n'utiliser que certaines de ses composantes pour répondre aux besoins spécifiques d'une application. Le framework est utilisé par de nombreuses entreprises et organisations à travers le monde, notamment pour la création de sites Web et de plates-formes en ligne.
Objectifs pédagogiques
- Connaître les principaux Design Patterns utilisés dans Symfony
- Créer une application et ses premières pages
- Utiliser Twig pour faire le rendu HTML de ses données
- Configurer et se servir de l’ORM Doctrine pour accéder aux données en base
- Manipuler les formulaires avec Symfony
Pré-requis
- HTML
- Programmation en PHP Objet
- Bases de données relationnelles
Public
- Développeurs
- Chefs de projets
Programme
Jour 1
Rappels PHP Objet
- Les bénéfices de l’objet sur le procédural
- Les classes : constructeurs d’objets
- Propriétés, méthodes et visibilité
- Namespaces et Autoloaders
- Constructeurs, méthodes magiques
- Encapsulation et getters/setters
- Références et Associations
- Héritage, Classes Abstraites, Interfaces, Traits
Introduction à Symfony
- Les principaux frameworks web
- Positionnement de Symfony face aux concurrents
- Passer d’un développement PHP traditionnel à Symfony
- Installation avec Composer et Symfony CLI
- symfony/skeleton vs symfony/website-skeleton
- Symfony Flex
Créer ses pages avec le Routeur de Symfony
- Configuration des Routes : Attributs PHP 8, Annotations, YAML, XML, code PHP
- HttpFoundation : Request, Response
- Paramètres d’URL, Paramètres spéciaux
- Conflits de routes et debug
Jour 2
Intégrer les vues avec le moteur de template Twig
- Appeler une vue depuis un contrôleur
- Structures conditionnelles
- Fonctions et Filtres
- Two Step View : héritage et blocks Twig
Manipuler les données avec l’ORM Doctrine
- Configurer le mapping relationnel objet
- Mapper les associations, l'héritage
- Génération des entités et des tables
- Doctrine\Migrations pour la gestion de migrations
- Requêter les entités avec les EntityManager et EntityRepository
- Construire des requêtes avancées avec le QueryBuilder et DQL
Jour 3
La gestion de formulaires
- Créer des formulaires en lien avec une entité
- Définir les règles de filtrage et de validation
- Utiliser les fonctions Twig pour le rendu des formulaires
- Les thèmes pour Bootstrap et Tailwind CSS
Allez plus loin
- Ajouter des fonctionnalités avec les Bundles et Symfony\Flex
- Créer et maintenir des applications multilingues
- Déboguer avec le Web Debug Toolbar et le Web Profiler
Méthodes mobilisées
- Un formateur validé par nos équipes techniques et pédagogiques sera présent pendant toute la durée de la formation
- Pour les formations en présentiel, une salle de formation sera mise à disposition et équipée d'ordinateurs portables, d'un accès Wi-Fi, d'un projecteur et d'un tableau blanc. En distanciel la session sera suivie sur Zoom ou autre outil de visioconférence sur demande (Teams, Webex, Google Meet...).
- Un support de cours en version numérique sera remis à chaque participant
Modalités d’évaluation
- Questions orales ou écrites (QCM)
- Exercices pratiques
- Auto-positionnement en amont et aval de la formation
Accessibilité aux personnes handicapées
Nous nous engageons à rendre notre formation Symfony accessible aux personnes en situation de handicap. Merci de nous contacter afin que nous puissions réaliser les adaptations nécessaires en amont de la formation.Avis
Patrick N.
La formation
Super formation
Le formateur
Super formateur
Coralie A.
La formation
J'aurais préféré faire concrètement un exemple piloté par le formateur en plus des slides avant de devoir le faire individuellement.
Anthony G.
Jeanne N.
Brahim C.
Bastien C.
Les +
La personnalisation du cours qui correspond parfaitement à nos besoins.
Cyril D.
La formation
Parfois un peu rapide pour mon niveau de connaissance Symfony avec des A/R dans le code de base du framework sans trop avoir le temps de voir et comprendre les commandes elles-mêmes.
Florent D.
Jérémy A.
Les +
Cadre de formation, sympathie du formateur, clarté de la formation
Cédric C.
Emeric J.
La formation
+ : support de cours bien rédigés avec les concepts permettant de reprendre ou relire la formation (liens vers des articles ou références de qualité)
Le formateur
Balance théorie/pratique bien équilibrée sur une formation de 4 jours pleins.
Les +
Salle = télétravail/téléformation (très bien, plus confortable pour l'apprentissage qu'une salle de cours)
Explications théoriques ou concepts appréciées
Sincérité du formateur sur les outils et technologies
Commentaire général
Personnellement, venant des techno Spring/Java, je ne peux que constater le retard de Symfony/PHP sur la plupart des points de comparaison : contrôleurs trop rudimentaires dans leurs possibilités, Doctrine limité par rapport à Hibernate, repositories moins simples, nécessité de doubler les repositories avec l'entity manager pour la persistence, gestion des entités bancale entre Doctrine et l'IDE, pas vu de gestion des transactions durant la formation (se fait-elle à la "main" ?)...
Point positif de Doctrine : la gestion partielle de la relation bidirectionnelle avec les adders/removers (au moins pour sensibiliser sur le sujet quand non connu par les développeurs).
Gros point négatif de Doctrine : supprimer les getters/setters à la main pour régénération, non gestion du refactoring (error prone important), du coup, on risque de préférer l'IDE pour plus d'efficacité et perdre le point positif de Doctrine.
Cyrille N.
Commentaire général
Je regrette que la formation n'est pas été faite AVANT celle faite sur Angular pour avoir un réel “projet fil rouge“ totalement abouti.
Géraldine S.
Thierry S.
Eric G.
La formation
Il aurait peut être fallu une journée (ou demi journée) de plus pour être plus à l'aise la dernière journée. Mais sinon rien à redire !
Le formateur
RAS. Le formateur maitrise son sujet et sait parfaitement le retransmettre.