SF2C4 | Développement Web avec Symfony2

  • Cette formation intensive de quatre jours au framework Symfony2 vous permet d'acquérir l'essentiel des connaissances de Symfony2 ainsi que les bonnes pratiques de développement web professionnel avec le langage PHP 5.3. Possibilité de faire cette formation à distance en ligne. N'hésitez pas à nous consulter !
  • Prérequis

    Maîtrise de la programmation orientée objet en PHP
  • Objectifs

    Cette formation intensive de quatre jours est la combinaison de nos formations « SF1C1 - Démarrer avec Symfony » et « SF2C2 - Maîtrise de Symfoy ». Elle vous permet de découvrir l'essentiel du framework Symfony2 avec les meilleurs experts de terrain. Vous apprendrez à maîtriser le modèle MVC ainsi que les formulaires, l'authentification ou bien encore les tests unitaires et la gestion du cache HTTP.

Programme détaillé

Rappels sur la programmation orientée objet (sur demande)

  • Les classes et les objets
  • Les propriétés et les méthodes
  • Les méthodes de construction et destruction d'instance
  • L'héritage de classes
  • La portée des attributs et méthodes (visibilité)
  • La gestion d'erreur avec les exceptions
  • Les espaces de nommage (« namespaces »)

Présentation générale du framework et de ses outils

  • Découvrir la genèse du projet Symfony
  • Comprendre la feuille de route du projet et ses différents types de versions
  • Installer une distribution standard de Symfony
  • Apprivoiser l'architecture standard d'un projet Symfony
  • Comprendre le traitement d'une requête HTTP par le framework
  • Découvrir la notion d'environnement et de configuration
  • Écrire du code selon des conventions de codage standards établies
  • Savoir déboguer son code en s'aidant des traces d'erreur fournies par Symfony

Introduction à la barre de débogage

  • Analyser les différents panneaux de la barre de débogage
  • Accéder au « Web Profiler » pour auditer en profondeur la requête courante
  • Savoir analyser et interpréter les traces d'exception

Comparatif des formats de configuration supportés

  • Paramétrer l'application au format Yaml
  • Configurer les urls de l'application avec des annotations
  • Configurer des services aux formats Yaml ou Xml
  • Surcharger la configuration d'un bundle

Convertir une requête en réponse

  • Concevoir des classes de contrôleur
  • Associer des urls aux contrôleurs
  • Recevoir un objet de requête dans une action
  • Lire les données du client depuis la requête
  • Lire et écrire dans la session de l'utilisateur courant
  • Lire et écrire des données dans un cookie
  • Retourner une réponse brute depuis une action
  • Retourner une réponse à partir d'une vue Twig
  • Déclencher une page d'erreur 404
  • Déclencher une redirection interne (« forward »)
  • Déclencher une redirection HTTP (« redirect »)

Traiter des formulaires dynamiques

  • Concevoir et traiter des formulaires simples
  • Découvrir les notions de types de formulaire
  • Automatiser le rendu des formulaires avec les aides de vue Twig
  • Personnaliser le rendu des formulaires avec les thèmes de rendu Twig
  • Configurer les types de formulaires comme des services
  • Appliquer des règles de validation standard sur les données soumises
  • Appliquer des règles de validation personnalisées sur les données soumises
  • Contextualiser le déclenchement des règles de validation avec les groupes de validation
  • Récolter les données validées d'un formulaire
  • Envoyer les données par courrier électronique avec Swiftmailer

Injection de dépendance et conteneur de service

  • 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
  • Récupérer un service depuis le conteneur
  • Créer et lire des paramètres de configuration globaux

Contracter une assurance qualité avec les tests automatisés

  • Découvrir le framework de tests PHPUnit
  • Comprendre les enjeux des tests automatisés (unitaires et fonctionnels)
  • 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

Restreindre l'accès aux pages d'une 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
  • Enregistrer des règles d'autorisation personnalisées avec le système de « voteurs »

Améliorer les performances avec le cache HTTP et les 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

Interagir avec une base de données relationnelle

  • Découvrir l'ORM Doctrine
  • Comprendre les notions d'entités, dépôts (« repository ») et de gestionnaire d'entités,
  • Automatiser la génération de classes d'entités associées au modèle relationnel SQL
  • Persister des données dans une base de données avec Doctrine
  • Récupérer les donnes d'une base de données avec Doctrine
  • Construire et exécuter des requêtes SQL personnalisées depuis les dépôts

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

    Allemagne, Espagne, États-Unis, France, Royaume-Uni, Belgique, Suisse, Monde
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 !