Aperçu du cours
Symfony est un framework de développement. Grâce à lui et les technologies qui l’accompagnent, vous pourrez construire les projets web de votre choix simplement et avec efficacité.
Programme d'études
Introduction
Présentation du Model-View-Controller
La distribution de responsabilités avec PHP: Le Model et un ensemble de classes, Les View par mécanisme de Templates PHP, L’aiguillage des flux grâce au codage des Controller
Symfony
Introduction à Symfony et historique des évolutions
Les Core Components
L’architecture du framework
Le projet sous Symfony
Acquérir Symfony
Développement d’une application basique avec Composer
Réglages du serveur Web et hébergement de l’application : les hôtes virtuels
Paramétrage du framework : BDD & environnements
Travaux pratiques: Création d’une plateforme et d’un environnement de développement, développement d’une application et analyse de sa forme.
Configuration du framework
Les fichiers nécessaires & leur hiérarchisation
Les syntaxes de configuration : YAML, PHP, XML…
Travaux pratiques: Benchmark des formats et choix puis configuration de l’application
La programmation de Symfony
La console : création d’ossature code de l’application
Bundle : fabrication, découpage et aperçu des travaux de la communauté
Travaux pratiques: Création de Bundle et utilisation des bundles complémentaires
Les BDD sous Symfony
Réglages de l’application et du Bundle
Techniques de Object-relational mapping (ORM)
Les repositories & le DQL
Doctrine 2 : installation, entités et mapping
Création par la console : Top-down & Bottom-up
EntityManager
Le QueryBuilder
Travaux pratiques: Génération de schémas de données, formation d’entités et d’un mapping, développement de classes de manipulation des entités (opérations CRUD), passage des fonctions sous forme de services
Controllers & routage
Controller frontal et de routage
Forme et réglage des routes : global et par Bundle
Exécution des Controllers: Récupération des paramètres, Relation Modèle – Controller, Redirections : internes et externes , Relai d’information et transmission au View
Travaux pratiques: Élaboration d’une stratégie de routage dans l’application, mise en place de Controllers & d’actions, réglages du routage et insertion au projet
Le View : Templates Twig
Présentation de Twig
Le Layout/View & les blocs : organisation, héritage de blocs et composition du View
Fonctions avancées: Les filtres et fonctions, Structures conditionnelles, Structures itératives
Échanges View – Controllers
Travaux pratiques: Génération des Views Twig & liaison avec les Controllers
Les formulaires
La librairie MVC
Création et déploiement : Form & FormBuilder
Lecture et confirmation des données: La couche modèle, Les obligations de validation, Les erreurs de validation
Les thèmes de formulaire pour adapter le rendu
Travaux pratiques: Génération de formulaires dans le VIew, insertion de formulaires réutilisables, découverte des types de champs et création de contraintes de validations.
La sécurité
Authentification
Permissions utilisateurs : rôles des utilisateurs, fournisseurs et cryptage de mot de passe
Autorisations
Travaux pratiques: Création d’une stratégie de sécurité et génération de rôles pour les permissions d’accès
La versions STS
Le principe de dépréciation
Le portage entre versions
Les fonctionnalités ajoutées