Symfony

Symfony

Devenez développeur backend


Référence IDL-SYMP-F
Durée 5 jour(s)

Pour une session intra ou sur mesure

Demander un devis
Débutant Développement logiciel

Symfony est un ensemble de composants PHP ainsi qu'un framework MVC libre écrit en PHP. Il fournit des fonctionnalités modulables et adaptables qui permettent de faciliter et d’accélérer le développement d'un site web. Il est très apprécié sur le marché de l’emploi pour sa capacité à gérer des projets complexes, riches et performants.

Objectifs pédagogiques

À l’issue de la formation, le participant sera en mesure de :

  • Développer la partie Backend d’une application web.
  • Maîtriser les différents composants de Symfony.
  • Développer des applications robustes et fiables.
  • Sécuriser des applications web.
  • Mettre en relation une application back end avec une base de donnée adapté.

Public concerné

Cette formation s'adresse principalement aux développeurs souhaitant comprendre les concepts de base de Symfony et être en mesure de réaliser une application back end en relation avec une base de données.

Prérequis

Il est important d'avoir acquis les connaissances suivantes :

  • MySQL.
  • Composer.
  • PHP.
  • Des notions de SGBDR sont un plus.

Programme de la formation

Introduction

  • Qu’est-ce que Symfony et pourquoi l’utiliser ?
  • L’évolution du Framework.
  • L’écosystème des Framework PHP.
  • Identifier et trouver des ressources sur Symfony.
  • Les concepts fondamentaux de Symfony.
  • Nouveautés PHP 8.

Rappel sur la programmation orientée objet

  • Classes et objets : attributs, méthodes et instances.
  • Constructeurs / destructeurs.
  • Héritage et agrégation.
  • Le concept de Namespace.

La mise en place de Symfony 

  • Installation de Symfony.
  • Symfony Flex.
  • Symfony Full Stack Framework.
  • Mettre en place la structure d’un projet Sympfony.
  • Les bases du concept MVC (Modèles, Vues, Contrôleurs).
  • Configuration du Framework Symfony (XML, YAML, PHP).
  • Comprendre le déroulement d’une requête HTTP dans Symfony 2.
  • Concepts de base de Symfony :
    • Autoloader.
    • Services et injection de dépendance.
    • Le routing et la gestion des url.

Architecturer un projet Symfony 

  • Organisation d’un projet.
  • Gestion des dépendances (composer).
  • Création des pages.

Exploiter le potentiel des commandes CLI

  • Amélioration de la vitesse de développement.
  • Création de vos propres commandes CLI.
  • Optimisation des performances de l'application.

La couche modèle avec Doctrine 2

  • Présentation du concept d’ORM (Object Relational Mapping).
  • Générer une base de données et les classes associées de la couche ORM.
  • Création de la base de données et d’une Entité.
  • Création – Read – Update – Delete.
  • Améliorer ses requêtes avec des critères.
  • Le Query Builder de Doctrine.

La couche vue avec TWIG

  • Présentation de la couche Vue.
  • Création de vos templates.
  • Les templates modulaires.
  • Héritage de template.
  • Les Blocks.
  • Syntaxe (variable, boucle et condition).
  • Le layout global et les layouts des bundles.

La couche contrôleur 

  • La gestion du routage des pages.
  • Gérer des paramètres.
  • Manipuler des objets Request et Response.
  • Gestion des sessions.

Les formulaires avec Symphony 

  • Mettre en place des formulaires simples.
  • Définir des règles de validation de vos formulaires.
  • Découverte du FormBuilder : le fabricant de formulaires.
  • Les formulaires avec Twig.
  • Créer la page de création d’une annonce.
  • Afficher un formulaire Symfony.
  • Les fonctions d’affichage de formulaire.
  • Mise en forme du formulaire.
  • Les thèmes de formulaires.
  • Le thème de formulaire Bootstrap. 

Sécurité

  • Authentification.
  • Autorisation.
  • Configuration.
  • Fournisseurs.
  • Pare-feu.
  • Utilisateurs.
  • Hachoirs de mots de passe.
  • Les rôles.
  • Règles de contrôle d'accès.
  • Authentificateurs.

Les services et l’injection de dépendances

  • Introduction à l'injection de dépendances et aux services de Symfony.
  • Utiliser la meilleure manière pour déterminer les services disponibles.
  • Utiliser "l'autowiring" pour injecter des dépendances dans un constructeur / setter ou attribute.
  • Vérifier la configuration de vos services.
  • Comprendre la limite entre les paramètres de services et les variables d'environnement.

Les micro services

  • Mise en place d'une API REST avec Symfony.
  • Résolution des problèmes courants d'une API.
  • API Plateforme – Introduction.
  • API Plateforme - Rest norme (GET/POST/PUT/DELETE).
  • Les bonnes pratiques.

Tests et qualité

  • Présentation des tests unitaires.
  • Tests unitaires avec PHPUnit. 
  • Présentation des tests fonctionnels. 
  • Tests fonctionnels. 
  • Opérations de mise en production. 

Moyens pédagogiques

  • Travaux pratiques. 
  • Questionnaire.