Web & Open Source
Conception Web & développement
Framework de développement Symfony 2
Avis d'expert
Le framework Symfony est un des socles techniques PHP 5 le plus en vogue. Grâce à une boîte à outils efficace (générateur de code - Web 2.0) et au respect des standards d'architecture Web, il favorise la productivité et l'agilité. Cette formation vous permettra d'apprendre à développer avec PHP 5 et le framework Symfony et d'implémenter entièrement une application Web respectant les bonnes pratiques d'architecture en vigueur (design patterns, MVC, base de données, interopérabilité...).
Objectifs pédagogiques
- Comprendre le concept du framework Symfony
- Déployer et configurer le framework Symfony
- Connaître les éléments structurants (rôles et ressources) qui constituent le framework
- Maîtriser les objets essentiels pour développer une application Web professionnelle
Public
Développeur
Architecte technique
Chef de projet
Pré requis
- Notions d'algorithmique.
- Connaissance des concepts objet, du langage HTML et PHP obligatoire.
Méthode pédagogique
Formation rythmée par des apports théoriques et des ateliers de mise en pratique.
Programme pédagogique détaillé par journée
Jour 1
Jour 2
Jour 3 Rappel sur la programmation orientée objet
Rappels et principes de la POO.
Héritages, classes abstraites et interfaces.
Visibilité.
Gestion des exceptions.
Espaces de nommage.
Présentation du framework Symfony 2
Qu’est ce qu’un Framework et son intérêt ?
Présentation globale du framework Symfony 2.
Forces et faiblesses.
Concepts principaux.
Architecture MVC.
Environnement du développement
Installation du framework symfony
Préparation de l'environnement d'exécution
Architecture du projet (application, bundles, libraries)
Traitement d'une requête HTTP avec Symfony2
Conventions de nommage
Démarrer avec le framework Symfony
Configuration du framework (XML, YAML et PHP).
Configuration de l'application et surcharge des configurations.
Outils de ligne de commande.
Outils du débogage du code (web debug toolbar, logs, profiler).
Autoloading des classes.
Couche contrôleur
Définition d’un « contrôleur » et de ses « actions ».
Mappage des contrôleurs au système de routage.
Accéder aux informations de la requête http.
Génération d’une réponse (sans ou avec template).
Lecture et écriture des données dans la session utilisateur.
Lecture et écriture des données dans un cookie.
Affichage d'une page d'erreur 404.
Redirection vers une autre page.
Liens et gestion des URL
Mécanisme du routage et d'écriture des URLs.
Personnalisation des routes.
Utilisation des routes.
Génération des URIs.
Couche vue
Utilisation des templates / moteur de template Twig.
Héritage de templates.
Inclusions dans les templates.
Templates modulaires : définition et utilisation des slots.
Helpers : fonctions de la couche vue.
Couche modèle
Définition du modèle et de la base de données.
Présentation de Doctrine 2 (DBAL et ORM).
Gestion des objets persistants.
Requêtage objet, accesseurs, relation et association.
Remaniement de code et objets métiers.
Formulaires
Fonctionnement des formulaires en Symfony 2.
Création d’un formulaire simple.
Formulaires et les champs prédéfinis.
Affichage d’un formulaire dans les templates.
Formulaires et doctrine : explorer le mode objet.
Sécurité renforcée avec les tokens (SCRF).
Validation
Bases de validation en Symfony 2.
Utilisation du service « validator ».
Validation des formulaires.
Configuration et contraintes.
Sécurité renforcée avec les tokens.
Sécurité
Contrôle d’accès et authentification.
Gestion des utilisateurs.
Cache HTTP
Introduction au cache http.
Configuration des entêtes http.
Contrôle des données mises en cache.
Tests automatisés
Installation et utilisation de PHPUnit.
Ecrire des scripts de tests fonctionnels.
Tests unitaires (création et exécution).
Tests fonctionnels (création et exécution).
Solution d'Email de Symfony
Library Swift Mailer.
Création et envoi des emails avec Symfony.
Services Web
Services Web avec SOAP et Rest.
Etendre les fonctionnalités de Symfony 2
Installation et activation des bundles externes.
Injection de dépendances et configuration de nouveaux services.
Ajoutant de nouvelles macros, fonctions et filtres à Twig.
Tests, qualité et développement agile
Concepts de base et les outils disponibles.
Principes du déploiement d’un projet Symfony 2.
Conclusions et bilan des bonnes pratiques











3 jours - 21 heures



