SF3C4 | Développement Web avec Symfony 3 en Blended Learning

  • Sensiolabs university a conçu la meilleure expérience de formation Symfony en associant le présentiel et le e-learning. En complément de la formation en présentiel, l'accès à notre plateforme de révision en ligne pendant 1 mois, permet d’associer différentes pratiques d’apprentissage, de tester ses compétences, de suivre sa progression et de rester en contact avec son formateur sur toute la durée du programme.
  • Prérequis

    Maîtrise du langage PHP
  • Objectifs

    Cette formation combine les deux modules « SF3C1 / Démarrer avec Symfony 3 » et « SF3C2 / Maîtrise de Symfony 3 » et couvre tous les concepts importants de Symfony. De l'installation à l'affichage de vos premières pages web dynamiques avec Twig, en passant par les formulaires, la sécurité et le cache HTTP, vous apprendrez à utiliser et maîtriser tous les outils majeurs de Symfony afin de devenir entièrement autonome avec le framework. Bien plus qu'une simple formation à Symfony 3, ce cursus est animé par des instructeurs experts et contributeurs à Symfony qui partageront avec vous leurs meilleures pratiques ainsi que leurs trucs et astuces !

Programme détaillé

Découvrir le framework Symfony 3

  • Présentation générale du framework et de ses outils
  • Installation d’une « Distribution Standard Symfony »
  • Architecture d’un projet Symfony (application, bundles, librairies, configuration etc.)
  • Traitement d’une requête HTTP avec Symfony
  • Comprendre la notion d’environnement (développement, production et test)
  • Conventions de codage et de nommage des fichiers
  • Introduction au concept de « Bundle »

Savoir déboguer son code

  • La barre de débogage (« Web Debug Toolbar »)
  • La journalisation des erreurs (« logs »)
  • L’interface de profilage des requêtes (« Web Profiler »)
  • Les traces d’exception et d’erreur (« stack traces »)
  • Les outils des composants Debug et VarDumper

Maîtriser la Configuration

  • Enregistrer des routes (YAML et annotations)
  • Contraindre les routes (méthodes HTTP, nom de domaine, paramètres, etc.)
  • Configurer un « bundle »
  • Définir des paramètres globaux de configuration
  • Extraire les paramètres sensibles dans des variables d'environnement
  • Comprendre la surcharge de configuration par environnement

Répondre à la requête de l'utilisateur

  • Développer des classes de contrôleur et des méthodes d'action
  • Transformer un objet de requête en objet de réponse
  • Associer des URLs aux contrôleurs grâce aux annotations
  • Générer une réponse brute ou à partir d’un gabarit Twig
  • Accéder à l'objet de requête pour lire les données du client
  • Lire et écrire des données dans la session de l’utilisateur
  • Générer une page de type 404
  • Savoir rediriger l’utilisateur vers une autre page

Générer des pages Web dynamiques

  • Découvrir le moteur de rendu Twig
  • Concevoir des gabarits concis et explicites
  • Accéder aux variables globales Twig
  • Maîtriser la grammaire Twig (tags, filtres, fonctions, testeurs, etc.)
  • Construire des pages plus complexes avec l'héritage de gabarits
  • Factoriser le code dupliqué avec l'inclusion de gabarits
  • Exécuter une action et afficher son résultat depuis une vue
  • Générer des URLs à partir de la configuration des routes
  • Afficher des formulaires Symfony

Interagir avec l'Utilisateur Final grâce aux Formulaires

  • Concevoir et traiter des formulaires simples
  • Appliquer des règles de validation sur les données transmises
  • Prototyper le rendu d’un formulaire avec Twig
  • Récolter et traiter les données validées d’un formulaire

Internationaliser et Localiser l'Interface Utilisateur

  • Installer le composant de traduction
  • Changer la langue par défaut de l’application
  • Définir des clés de traduction dans les vues Twig
  • Générer les squelettes de fichiers de traduction (XLIFF, YAML)
  • Traduire les clés de traduction
  • Gérer les traductions incluant des règles de pluralisation

Pérenniser l'application avec les tests automatisés

  • Découvrir le framework de tests PHPUnit
  • Comprendre les enjeux des tests automatisés
  • Configurer une suite de tests automatisés
  • Créer et exécuter une suite de tests unitaires
  • Écrire et exécuter une suite de tests fonctionnels
  • Générer des rapports de couverture de code

Externaliser le métier dans les services

  • Comprendre le principe de l'injection de dépendance
  • Introduction au conteneur de services de Symfony
  • Lister les services existants du framework Symfony
  • Enregistrer de nouveaux services dans le conteneur
  • Configurer des services avec des paramètres globaux
  • Tirer profit de l'enregistrement automatiques des services
  • Configurer manuellement certains services métiers

Sécuriser l'accès à certaines pages de l'application

  • Introduction aux principes d'authentification et d'autorisation
  • Sécuriser certaines parties d'un site avec une authentification par formulaire Web
  • Établir une politique de droits d'accès selon les rôles de l’utilisateur courant
  • Tester les droits de l'utilisateur courant depuis un contrôleur ou une vue

Améliorer les performances avec le cache HTTP et ESI

  • Introduction au cache HTTP
  • Découvrir les différents types de cache
  • Comparer les stratégies de cache : expiration versus validation
  • Appliquer les règles d'expiration et de validation des pages
  • Cacher des fragments dynamiques de page avec les ESIs (« Edge Side Includes »)
  • Installer et configurer le proxy inversé natif de Symfony

Plateforme de révision en ligne - 1 mois d'accès

  • Test quotidien
  • Exercices corrigés
  • Documentations

Programme horaire

Jour 1

Appréciation de la formation

Moyenne globale :

  1. Evaluation de la pédagogie : N.C
  2. Evaluation du contenu : N.C
  3. Evaluation du rythme : N.C
  • Durée

    4 jour(s)
  • Niveau

    Débutant
  • Langues disponibles

    Français, Anglais, Allemand, Espagnol
  • Pays disponibles

    Monde, France, Allemagne, Espagne, Royaume-Uni, États-Unis
A partir de 1 990,00 €
Aucune session prévue

Aucune session n'est prévue pour cette formation. Nous organisons cependant des sessions de formation sur mesure, n'hésitez pas à nous contacter pour plus d'informations !