Evolution MM

Formations à l'informatique
Découvrez la différence ENI

Lien accueil

Téléchargez le Calendrier des formations

Nantes, Rennes, Niort, Nice, Paris

jusqu'à juillet 2018

Rechercher
Rechercher une formation
 

Développer en PHP avec le framework Symfony

La formation est dispensée sur la dernière version LTS (Long-Term Support) à la date du cours. Une exploration des changements à venir dans la version STS (Short-Term Support) du moment sera faite dans le dernier module de formation.

Public :

  • Développeurs PHP.

Objectifs :

  • Comprendre et mettre en œuvre le modèle MVC dans une application Web PHP ;
  • Construire une application basée sur Symfony.

Pré-requis :

  • Connaissance de la programmation et du langage HTML, ainsi que des technologies de l'Internet. ;
  • Connaître le langage PHP ou avoir suivi le cours " T44B-010 - Développement PHP - Niveau 1 " ;
  • Etre familiarisé avec la programmation orientée objet en PHP.

Contenu pédagogique

Introduction aux frameworks MVC PHP

  • Qu'est-ce que MVC ?
    • Apports et avantages
  • La répartition des responsabilités dans une application PHP
    • Implémentation du Model avec un ensemble de classes
    • Réalisation des Vues avec les mécanismes de Templates PHP
    • Codage des Contrôleurs pour l'aiguillage des flux

Présentation et introduction à Symfony

  • Historique de Symfony
    • Différentes versions du framework : Evolutions v1, v2 et v3
    • Comprendre le versioning de Symfony : Le versionning sémantique
    • Choisir sa version pour un projet
  • Architecture du framework
    • La notion de distribution
  • Les composants de base

Mettre en place un projet Symfony

  • Création d'un projet avec l'édition standard du framework
    • Utilisation de Composer
    • Découverte de l'application générée
  • Paramétrage du serveur Web pour l'hébergement de l'application
    • Création et configuration d'un hôte virtuel
  • Configuration du framework pour l'utiliser dans ses applications
    • Liaison à la base de données
    • Les différents environnements : dev, test, prod

Configuration de Symfony

  • Les fichiers de configuration
    • Répartition hiérarchique des fichiers
  • Les syntaxes de configuration
    • Syntaxes YAML, Annotations, XML et PHP
    • Faire un choix de syntaxe

Le modèle de programmation de Symfony

  • Présentation de la console pour la génération des squelettes code de l'application
  • La notion de Bundle
    • Création d'un Bundle et déclaration dans l'application
    • Comment découper correctement en Bundle
    • Les Bundles de la communauté

La manipulation des bases de données pour le modèle

  • Configuration de l'application et du Bundle pour l'accès aux données
  • Présentation des techniques de mapping objet/relationnel
    • Avantages et principes
  • Doctrine 2 : Le framework de manipulation de données de Symfony
    • Installer Doctrine 2 dans l'application
    • Les entités et le mapping sur les tables
  • Génération avec la console
    • Les différentes approches : Top-down, Bottom-Up
  • Utiliser l'EntityManager
  • Les repositories et le DQL
    • Personnalisation du repository pour les requêtes de sélection
    • Manipulation et syntaxe DQL
  • Le QueryBuilder

Les contrôleurs et le routage des requêtes

  • Mécanisme de contrôleur frontal et de routage
  • Format et configuration des routes
    • Routage global dans l'application
    • Le routage de chaque Bundle
  • Implémentation des contrôleurs
    • Récupération des paramètres des routes
    • Interaction avec le modèle
    • Redirections internes et externes
    • Transmissions d'information et délégation aux vues

Les vues avec les Templates Twig

  • Présentation de Twig et de sa syntaxe
    • Instructions et expressions
  • Les notions de layout/views et de blocs
    • Organisation des fichiers
    • Principes de l'héritage de blocs
    • Composition de vues
  • Fonctionnalités avancées du langage
    • Structures conditionnelles et itératives
    • Les filtres et fonctions
  • Echange de données et interactions avec les contrôleurs

Les formulaires

  • Une librairie MVC pour créer les formulaires
  • Initialisation et affichage d'un formulaire
    • Les objets Form et FormBuilder
    • Les différents types de contrôle
  • Traitement et validation des données d'un formulaire
    • Le lien avec la couche modèle
    • Mise en place des contraintes de validation
    • Gestion des erreurs de validation et de leurs messages
  • Utilisation des thèmes de formulaire pour la personnalisation du rendu

La sécurité dans les applications Symfony

  • L'authentification
    • Les différentes techniques d'authentification et leur configuration dans l'application.
  • Gestion des permissions utilisateurs
    • Utilisateur et rôles
    • Exploiter les fournisseurs d'utilisateurs
    • Le cryptage des mots de passe
  • Gestion des autorisations
    • Sécuriser les accès en fonction des rôles

Perspectives : La version STS en cours

  • Explication du principe de dépréciation
    • Le cycle dans Symfony
    • Savoir anticiper les changements d'API
  • Contraintes de portage entre les versions
  • Exploration des nouvelles fonctionnalités
  • Mettre en place la veille technologique
    • Surveiller les évolutions de version
    • Identifier la prochaine version LTS
    • Surveiller les évolutions fonctionnelles
Durée : 4 jour(s)
Tarif : Consultez-nous
Réf : T44B-042

Dates des sessions

Nantes (44) 28/08/18 06/11/18 Rennes (35) 28/08/18 06/11/18 Paris (75) 28/08/18 06/11/18 Niort (79) 28/08/18 06/11/18 Nice (06) 28/08/18 06/11/18 in-class™

Filières

Développeur PHP