Symfony Web
Symfony Web
Se connecter pour s'inscrireVotre progression
0 / 0 étapes complétées
0
Syllabus
-
-
Objectifs
-
Validations de compétences
-
Public cible
Aucun public cible spécifié pour ce module.
-
Besoins techniques
-
Prérequis
- Aucun prérequis
-
Niveau
-
Historique du module
Aucune action enregistrée
-
Informations Générales
-
public
- Étudiants en Bachelor CDA 3ème année
-
prérequis
- Connaissances de base en PHP et en programmation orientée objet
- Maîtrise des concepts web (HTML, CSS, JavaScript)
- Notions de base sur les bases de données et SQL
-
objectifs
- Comprendre les fondamentaux du framework Symfony
- Maîtriser la structure MVC (Modèle-Vue-Contrôleur)
- Apprendre à configurer un environnement de développement Symfony
- Créer des applications web dynamiques et sécurisées
- Utiliser Doctrine ORM pour la gestion des bases de données
- Créer et valider des formulaires
- Mettre en place un système d'authentification et d'autorisation
- Développer des API RESTful
- Déployer une application Symfony en production
- Appliquer les bonnes pratiques de développement avec Symfony
-
durée
- ~ 40 heures
-
-
Modules du Cours
-
Introduction à Symfony et installation
- Présentation de Symfony
- Historique et avantages de Symfony
- Comparaison avec d'autres frameworks PHP
- Cas d'utilisation courants
- Installation de Symfony
- Prérequis : PHP, Composer, serveur web
- Utilisation de Symfony CLI
- Création d'un projet Symfony
- Structure d'un projet Symfony
- Dossiers et fichiers clés
- Architecture MVC (Modèle-Vue-Contrôleur)
- Exercice pratique : Création d'une page d'accueil simple avec Twig
- Présentation de Symfony
-
Les bases de Symfony (Routing, Contrôleurs et Vues)
- Le système de routage
- Définition des routes avec YAML ou annotations
- Paramètres de route et contraintes
- Les contrôleurs
- Création d'un contrôleur
- Méthodes d'action et réponse HTTP
- Passage de paramètres aux vues
- Les vues avec Twig
- Syntaxe de base de Twig
- Héritage de templates
- Inclusion de templates partiels
- Exercice pratique : Création d'un blog simple avec des pages statiques et dynamiques
- Le système de routage
-
Gestion des données avec Doctrine ORM
- Introduction à Doctrine ORM
- Concepts de base : entités, repositories, requêtes
- Configuration de la base de données
- Les entités
- Création d'une entité
- Propriétés, annotations et relations (OneToMany, ManyToOne, etc.)
- Les migrations
- Création et exécution des migrations
- Mise à jour du schéma de la base de données
- Exercice pratique : Ajout d'un système de gestion d'articles pour le blog
- Introduction à Doctrine ORM
-
Les formulaires et la validation
- Création de formulaires
- Utilisation du composant Form de Symfony
- Liaison d'un formulaire à une entité
- Validation des données
- Utilisation des contraintes de validation
- Messages d'erreur personnalisés
- Gestion des formulaires dans les contrôleurs
- Traitement des données soumises
- Redirection et messages flash
- Exercice pratique : Ajout d'un formulaire de création et d'édition d'articles
- Création de formulaires
-
Sécurité et authentification
- Introduction au composant Security
- Authentification et autorisation
- Rôles et hiérarchie des rôles
- Configuration de la sécurité
- Authentification par formulaire
- Protection des routes
- Gestion des utilisateurs
- Création d'une entité User
- Hashage des mots de passe
- Exercice pratique : Ajout d'un système de connexion/déconnexion au blog
- Introduction au composant Security
-
Les services et l'injection de dépendances
- Introduction aux services
- Définition et utilité
- Injection de dépendances
- Création de services personnalisés
- Déclaration d'un service
- Utilisation dans un contrôleur
- Exercice pratique : Création d'un service pour gérer les statistiques du blog
- Introduction aux services
-
API REST avec Symfony
- Introduction aux API REST
- Concepts de base : endpoints, méthodes HTTP, stateless
- Création d'une API
- Utilisation du composant Serializer
- Création de routes API
- Gestion des réponses
- Format JSON
- Codes de statut HTTP
- Exercice pratique : Création d'une API pour le blog
- Introduction aux API REST
-
Déploiement et bonnes pratiques
- Préparation au déploiement
- Optimisation de l'environnement de production
- Gestion des variables d'environnement
- Déploiement sur un serveur
- Utilisation de Docker ou d'un hébergement traditionnel
- Bonnes pratiques
- Organisation du code
- Sécurité et performances
- Exercice pratique : Déploiement du blog sur un serveur
- Préparation au déploiement
-
Projet final
- Objectif : Créer une application Symfony complète (ex : gestion de bibliothèque, réservation de salles, etc.)
- Évaluation : Présentation et soutenance du projet
-
-
Ressources
Atelier guidé
Construire une fonctionnalité complète avec formulaire, validation, persistance, autorisation et test.
- Domaine : créer une entité, une migration et une contrainte qui protège une règle métier.
- Formulaire : lier un formulaire typé, afficher les erreurs et protéger la soumission avec CSRF.
- Sécurité et tests : ajouter une politique d’accès, écrire un test de succès et un test de refus.
Restitution de l’atelier
- Une fonctionnalité Symfony avec migration.
- Un formulaire validé et sécurisé.
- Des tests fonctionnels et une commande de démonstration.
Validation : La fonctionnalité fonctionne depuis HTTP, refuse un accès interdit et conserve des données cohérentes après une erreur.