Logo Symfony

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.

le 06 septembre 2023

La formation
Super formation

Le formateur
Super formateur

Coralie A.

le 06 septembre 2023

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.

le 06 septembre 2023

Jeanne N.

le 06 septembre 2023

Brahim C.

le 06 septembre 2023

Bastien C.

le 13 avril 2022

Les +
La personnalisation du cours qui correspond parfaitement à nos besoins.

Cyril D.

le 13 avril 2022

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.

le 13 avril 2022

Jérémy A.

le 21 décembre 2021

Les +
Cadre de formation, sympathie du formateur, clarté de la formation

Cédric C.

le 29 octobre 2021

Emeric J.

le 12 mars 2021

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.

le 12 mars 2021

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.

le 12 mars 2021

Thierry S.

le 12 mars 2021

Eric G.

le 12 mars 2021

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.

Brice B.

le 12 mars 2021

Samir A.

le 12 mars 2021

Ivan G.

le 12 mars 2021

Marc S.

le 12 mars 2021

Antoine C.

le 12 mars 2021

Amal M.

le 28 décembre 2020

Amine B.

le 30 avril 2019

Formations associées

Dernière modification le 26/12/2022