Développement Symfony 5

Développement    1360 € HT

Objectifs

  • Appréhender les concepts et l’architecture du framework Symfony
  • Maîtriser les différents outils
  • Développer une application Web simple avec Symfony 5

Methodes et outils pédagogiques

  • Alternance exposés théoriques et exercices pratiques (80% pratique)
  • Support de cours 

Evaluation

  • Tout au long de la formation, exercices pratiques permettant au formateur la validation des acquis et des compétences

Public concerné

Chefs de projet, Développeurs, Webmaster

Pré-requis

Maîtriser PHP et les concepts Objet, ainsi que de HTML et SQL et avoir des notions de CSS et JavaScript

2 jours
Prochaine session

Nous consulter

Rappels sur PHP5 (selon le tour de table)

  • La syntaxe PHP
  • Le développement orienté objet en PHP5
  • Les exceptions
  • Introduction au namespaces
  • Les Closures & Fonctions Anonymes
  • PHP en ligne de commande

Introduction à Symfony 5

  • Notion de framework
  • Historique & Feuille de Route
  • Les nouveautés de Symfony 5 par rapport à Symfony 3
  • Installation et mise en place d’un projet

Architecture de Symfony 5

  • Organisation d’une application
  • Notion de distribution
  • Design pattern MVC
  • Cycle de traitement d’une requête
  • ClassLoader et PSR-4

Développer avec Symfony 5

  • Gestion des sources
  • La ligne de commande
  • Debug Toolbar
  • Profiler

Configuration d’un projet

  • Les environnements
  • Les différents fichiers de configuration
  • Les différentes syntaxes Yaml, Xml, PHP

Créer des pages

  • Créer des contrôleurs
  • Définir les url
  • Recevoir des paramètres
  • L’objet Request
  • Envoyer une réponse
  • L’objet Response
  • Redirections
  • Utiliser la vue
  • Le Routing (Définition des routes, Routes paramètrées, Génération d’url)
  • Lire et écrire dans la session de l’utilisateur courant

Les services

  • Concept
  • Architecture & Injection de dépendance
  • Déclaration et utilisation

La vue : Twig

  • La syntaxe
  • Gestion et manipulation des variables
  • Mise en forme de données
  • Structures (boucles et conditions)
  • Définir un layout (héritage, block et inclusion)

Le modèle : notion d’ORM et Doctrine

  • Qu’est-ce qu’un ORM, ses objectifs
  • Présentation de Doctrine
  • Création d’un modèle
  • Synchronisation du schéma avec la base
  • Définitions des relations
  • Manipulation des entités
  • Recherches et requêtes
  • Organisation dans un projet Symfony 5

Les formulaires

  • Présentation du composant Form
  • Stratégies de création des formulaires
  • Gestion de l’affichage
  • Validation des données
  • Traitements de la soumission
  • Afficher des informations avec les messages flash

L’envoi de mail

  • Présentation de Swiftmailer
  • Envoyer les données par courrier électronique avec Swiftmailer
  • Configuration

Bonnes pratiques et standards

  • Règle de style de code
  • PSR
  • Les outils

Restreindre l’accès à certaines pages

  • L’approche de Symfony 5
  • Le firewall
  • Le contrôle d’accès
  • Gestion des droits
  • Configuration de la sécurité

Tests et qualité

  • Les tests unitaires
  • Les tests fonctionnels
  • L’intégration continue
  • Internationalisation
  • Notion de locale
  • Mise en place de traduction
  • Localisation d’interface

Bundles Tiers

  • Chercher un bundle
  • Installer un bundle tiers
  • Bundles recommandés

Bibliographie

  • Où s’informer
  • Où trouver de l’aide