Print Friendly, PDF & Email
Symfony-boule

Programme Symfony3

PROGRAMMATION ORIENTEE OBJET
Les classes et objets
Constructeur
Propriétés et méthodes
L’héritage
Visibilité
Exceptions
Espaces de nommage (« namespaces »)

PREMIERS PAS AVEC SYMFONY3
Introduction générale au framework Symfony3 et ses outils
Installation de la distribution standard de Symfony3
Découverte de l’architecture d’un projet Symfony3 (application, bundles, librairies externes)
Comprendre les notions de requête et de réponse HTTP
Configuration des urls et du routage de Symfony3
Découverte des environnements par défaut
Génération d’un nouveau bundle

CONFIGURATION ET OUTILS DE DEBOGAGE
La barre de débogage
L’application de profilage : le profiler
Configuration avec les annotations, XML, YAML et PHP

GENERER DES PAGES AVEC LES GABARITS TWIG
Syntaxe du moteur de rendu Twig
Héritage de gabarits
Inclusion de gabarits et d’actions
Découvertes des aides de vues : filtres, fonctions et macros
Support des formats de sortie multiples (HTML, JSON, XML, Atom…)

TRAITEMENT D’UNE REQUETE HTTP AVEC SYMFONY3
Créer des classes de contrôleur et des actions
Associer des contrôleurs avec le système interne de routage des urls
Générer des réponses brutes ou à base de gabarits
Accéder aux données de la requête
Manipuler la session de l’utilisateur
Lire et écrire des cookies
Déclencher une page d’erreur 404 et des redirections

INTERAGIR AVEC UNE BASE DE DONNEES RELATIONNELLE
Introduction à PDO (DSN, requêtes préparées, transactions…)
Ouvrir une connexion sur un serveur de base de données MySQL ou SQLite
Exécuter une requête SQL sur la base de données depuis PHP
Sécuriser les requêtes SQL avec des transactions et des requêtes paramétrées
Factoriser la logique métier dans des classes de modèle
Implémenter le motif de conception «Data Mapper» ou «Active Record» dans les classes de modèle

SECURITE WEB
Sécuriser le code contre les attaques XSS
Sécuriser l’application contre les attaques CSRF
Protéger les requêtes SQL contre le risque d’injection SQL

TRAITER LES FORMULAIRES AVEC SYMFONY3
Découverte du framework de gestion de formulaires
Créer et traiter des formulaires simples
Définir des règles de validation sur les données saisies par l’utilisateur
Prototyper le rendu du formulaire avec Twig
Récupérer les données saisies par l’utilisateur et validées par Symfony3
Appliquer des règles de validation sur les formulaires

CONTRACTER UNE ASSURANCE QUALITE AVEC LES TESTS AUTOMATISES
Introduction à PHPUnit
Installer PHPUnit
Comprendre les enjeux de tester unitairement son code
Configurer une nouvelle suite de tests unitaires avec PHPUnit
Ecrire des tests unitaires
Exécuter une suite de tests unitaires
Générer et comprendre les rapports de couverture de code
Ecrire et exécuter un scénario de test fonctionnel

METTRE EN PLACE UNE POLITIQUE DE DROIT D’ACCES
Configurer un nouvel hôte virtuel Apache pour un projet Symfony3                                                                                                                                  Introduction aux principes d’authentification et d’autorisation
Mettre en place une authentification par formulaire web
Mettre en place une authentification HTTP
Restreindre des actions en fonction des permissions de l’utilisateur
Tester les permissions de l’utilisateur depuis les contrôleurs et la vue

OPTIMISATION DES PERFORMANCES AVEC LE CACHE HTTP ET LES ESI
Introduction au cache HTTP
Modifier la réponse avant de l’envoyer au client
Appliquer des règles de validation et d’expiration des pages grâce aux entêtes HTTP
Découvrir et mettre en pratique les ESI (« Edge Side Includes »)
Installer et configurer le Reverse Proxy Cache de Symfony3

INJECTION DE DEPENDANCE ET CONTENEUR DE SERVICES
Comprendre le principe de l’injection de dépendance
Introduction au conteneur de services
Lister la liste des services existants de Symfony3
Enregistrer de nouveaux services dans le conteneur
Récupérer un service depuis le conteneur
Créer et lire des paramètres de configuration globaux
Exposer et valider une configuration sémantique d’un module


8 rue Colbrant • 59000 Lille • tél. : 03 20 73 99 40 • http://capside-formation.fr • contact@capside-formation.fr