Intermédiaire FOAD : 10j (70h) Distanciel : 10j (70h) Hybride : 10j (70h) Présentiel : 10j (70h)

Framework Symfony

Création d’une application WEB à partir du Framework Symfony

Framework Symfony

Programme de la formation

Introduction

03:30:00
Présentation : qu’est-ce qu’un Framework ?
Les dépendances et prérequis de Symfony + Choix de l’IDE ?
Création d’un nouveau projet Symfony + présentation de la CLI de Symfony
Travaux pratiques Lancement du projet de test

Première page et contrôleur (MVC)

03:30:00
L’arborescence et organisation d’un projet Symfony 5
Rappel et application du MVC avec Symfony : Controller + Entity et Repository + Templates
Création d’un contrôleur avec le composant “console” + vue par défaut et explication routes
Travaux pratiques Création d’un contrôleur avec le composant “console” + vue par défaut

Le moteur de template TWIG

07:00:00
TWIG fonctionnement et avancé
Framework Bootstrap
Travaux pratiques Exercices TWIG

Entités et base de données avec Doctrine

07:00:00
Configuration Doctrine
Création d'entités
Migrations et base de données
Relations OneToMany, ManyToOne
Mappage et cascade
Affichage de données liées
Travaux pratiques Créer une entité Article et générer la table correspondante, lier Article à Category avec affichage conditionné

Formulaires Symfony – Création & affichage

03:30:00
Création de types de formulaire
Association avec une entité
Affichage dans Twig
Travaux pratiques Créer un formulaire d’ajout d’un article lié à une catégorie

Validation des données & gestion des erreurs

03:30:00
Contraintes de validation (annotations, YAML)
Messages d’erreur personnalisés
Gestion des erreurs côté contrôleur
Travaux pratiques Ajouter des règles de validation au formulaire précédent

Sécurité, firewall et gestion des utilisateurs

03:30:00
Configuration du firewall Symfony
Création d’un utilisateur avec hash de mot de passe
Login form & authentification
Accès conditionné selon rôles (ROLE_USER, ROLE_ADMIN)
Travaux pratiques Créer une page "admin" accessible uniquement aux utilisateurs authentifiés

Gestion des rôles et autorisations d’accès

03:30:00
Attribuer des rôles à l’inscription
Sécuriser des routes et contrôleurs avec annotations
Sécurité dans les templates
Travaux pratiques Protéger les actions sensibles (modification, suppression) selon le rôle

CRUD complet et pagination

03:30:00
Génération CRUD
Personnalisation des formulaires et vues
Intégration de la pagination avec KnpPaginator
Travaux pratiques Créer un CRUD paginé pour les articles

Filtres de recherche et tri des données

03:30:00
Formulaires GET
Filtrage dynamique avec requête Doctrine
Tri ascendant/descendant
Travaux pratiques Créer un filtre de recherche d’articles par mot-clé

Upload de fichiers (images, documents)

03:30:00
Gestion des fichiers
Affichage conditionné des médias
Sécurité des uploads
Travaux pratiques Ajouter la possibilité d’uploader une image pour un article

Gestion des assets avec Webpack Encore

03:30:00
Introduction à Webpack Encore
Intégration de CSS/JS dans Symfony
Compilation, versioning
Travaux pratiques Ajouter un style CSS personnalisé compilé via Webpack

Introduction à l’API REST

03:30:00
Différences API / interface web
Création d’un contrôleur API
Retour de réponses JSON
Travaux pratiques Créer une route API qui renvoie tous les articles au format JSON

Sérialisation et sécurisation de l’API

03:30:00
Sérialisation avec Serializer
Groupes de normalisation
Accès protégé avec JWT ou token simple
Travaux pratiques Restreindre une route API à des utilisateurs connectés

Tests fonctionnels et unitaires

03:30:00
Utilisation de PHPUnit
Tests de contrôleurs, formulaires
Fixtures avec DoctrineFixturesBundle
Travaux pratiques Écrire un test de création d’article

Débogage avancé & outils de productivité

03:30:00
Symfony Profiler
Xdebug
Logs, outils de performance
Travaux pratiques Identifier un bug et l’expliquer via les outils de debug

Atelier final – projet Symfony en autonomie

07:00:00
Réalisation d’un mini-projet : blog, CRM, catalogue produits, etc.
Revue de code finale
Présentation orale du projet
Travaux pratiques Développement et présentation d’une application Symfony complète

Objectifs de la formation

Fil rouge de la formation : créer une application de gestion d’évènement via le Framework Symfony.

Ce que vous allez apprendre

Comprendre les prérequis du framework
Créer sa première page
Comprendre le fonctionnement de twig
Gérer des modèles de données avec Doctrine
Intégrer un formulaire fonctionnel avec Symfony
Sécuriser les entrées utilisateurs
Mettre en place un système de connexion sécurisé
Gérer les accès selon les profils utilisateurs
Structurer les opérations standard dans un projet
Dynamiser les interfaces de consultation
Gérer les interactions avec le système de fichiers
Gérer les dépendances front-end dans un projet Symfony
Comprendre les bases d’une API REST avec Symfony
Rendre l’API exploitable et sécurisée
Vérifier la stabilité d’un projet Symfony
Déboguer efficacement une application Symfony
Être capable de concevoir, développer et présenter un projet Symfony

Prochaines sessions

FOAD (Formation à distance)

Entrée en formation possible sous 15 jours après signature de la convention.

Aucune session prévue pour le moment

Cependant vous pouvez nous contacter pour que nous définissions une session ensemble selon vos besoins

Informations pratiques

Modalités d'évaluation

Evaluation de la progression en cours de formation à l'aide de cas pratiques, mises en situation, QCM…

Test de positionnement en amont et en aval afin de valider les compétences acquises.

Modalités pédagogiques

  • Méthodes : Expositive, démonstrative et active
  • Moyens : Cas pratique, mise en situation
  • Ressources : Support de cours et Programme de formation
  • Moyens techniques : Teams

Accessibilité

Toutes nos formations sont accessibles aux personnes en situation de handicap.

Pour plus de renseignements, n'hésitez pas à nous contacter.

En savoir plus