Laravel – Développer des applications Web

Dernière mise à jour : 22 septembre 2023

Cette formation Laravel offre une immersion complète dans le développement d’applications Web avec le framework PHP le plus populaire.
De la configuration initiale du projet à la mise en œuvre des stratégies de sécurité efficaces, les participants apprendront à exploiter toutes les fonctionnalités clé de Laravel.
Les sessions comprendront la conception de la couche de persistance métier via Eloquent et QueryBuilder, l’établissement du routage des requêtes HTTP avec des contrôleurs, et la création de vues interactives pour l’affichage et la saisie des données.
La formation s’attarde également sur les principes du modèle MVC, la structure du framework Laravel et la manipulation des données via l’ORM.
Enfin, les participants apprendront à sécuriser leurs applications Laravel en mettant en œuvre une stratégie de sécurité efficace.

Objectifs pédagogiques


  • Comprendre la philosophie et les apports des frameworks MVC
  • Mettre en place un environnement de développement
  • Créer un projet Laravel
  • Configurer une application Laravel
  • Découper une application en couche en suivant le modèle MVC et identifier le rôle de chaque élément.
  • Développer une couche de persistance métier avec les techniques d'accès aux données proposées par Laravel (Eloquent, QueryBuilder)
  • Concevoir le routage des requêtes HTTP avec les contrôleurs
  • Créer des vues d’affichage et de saisie de données et construire des formulaires interactifs
  • Maitriser les interactions entre les vues, les contrôleurs et le modèle
  • Utiliser l’injection de dépendance entre les composants
  • Appliquer une stratégie de sécurité efficace dans une applications Laravel

Public concerné


Concepteurs/Développeurs, Architectes techniques, Chefs de projets

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 - PHP – Développer des applications Web
  • Être familiarisé avec la programmation orientée objet en PHP

Programme détaillé


Introduction aux frameworks MVC PHP (0,5 heure)

  • Qu’est-ce que MVC ?
    • Apports et avantages
  • La répartition des responsabilités dans une application PHP
    • Implémentation du modèle 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 à Laravel (0,5 heure)

  • Historique de Laravel
    • Différentes versions du framework : Les évolutions
  • Architecture du framework
    • Le middleware Laravel
    • Les services Provider et Container
    • Les façades
    • Le cycle de vie d'une requête

Un projet Laravel (2 heures)

  • Prérequis
  • Préparation de l’environnement.
    • Avec Homestead
    • Solutions alternatives
  • Installation d’une application Laravel
    • Avec composer
  • Arborescence de l’application
    • Structure et rôles des différents fichiers et répertoires
  • La ligne de commande Laravel (CLI) : Artisan
    • Usages et commandes disponibles
  • Configuration d’une application Laravel
    • Les fichiers DotEnv
    • Définition des variables d’environnement
  • Travaux pratiques :
    • Installer une plateforme et un IDE de développement pour Laravel
    • Créer un projet d’application Laravel et explorer sa structure et sa configuration

Les contrôleurs et le routage des requêtes (5 heures)

  • Mécanisme de contrôleur frontal et de routage
    • Configuration des routes
    • Paramètres de routes, obligatoires, optionnels et sous contraintes
    • Groupe de routes
    • Récupération des paramètres des routes
  • Implémentation des contrôleurs
    • Les objets Request et Response
    • Gestion de la couche HTTP (routing, sécurité, session…)
    • Redirections internes et externes
    • Interaction avec le modèle
  • Transmissions d’information et délégation aux vues
  • Filtrage avec les Middlewares
    • Principes de traitement des requêtes et des réponses
  • Présentation des contrôleurs de ressource : mise en place d’un CRUD
  • Travaux pratiques :
    • Définition de la stratégie de routage dans l’application ainsi que son format de configuration
    • Génération des contrôleurs et des actions
    • Ajuster du routage dans la configuration
    • Implémentation des actions et lien avec les services d’accès aux données métiers

Le modèle et la base de données (5 heures)

  • Les techniques d’accès aux données dans Laravel
    • Le Query Builder
    • L’ORM avec Eloquent
    • Le système des migrations
  • Configuration de l’application pour l’accès aux données
  • Requêtage SQL
    • Le modèle de programmation
    • Gestion des transactions
  • Le Query Builder
    • Construction des différents types de requêtes
    • Exécution et traitement des résultats
  • Eloquent : Le framework de manipulation de données de Laravel
    • Le principe du mapping Objet-Relationnel
    • Génération avec Artisan
    • Extraction de données
    • Modification de données
  • Structures avancées
    • Gestion des associations entre classes 
    • Les scopes
  • Travaux pratiques :
    • Création d’un schéma de données à partir des migrations
    • Génération des entités
    • Codage de classes de manipulation des entités en implémentant les opérations CRUD
    • Exposition des fonctionnalités de manipulation de données

Création de services applicatifs (3 heures)

  • Les mécanismes d’injection de dépendances dans Laravel
  • Les différentes techniques d’injection
    • Injection par constructeur
    • Injection par méthode
  • Application au modèle MVC
    • Création de services d’accès aux données
    • Injection dans les contrôleurs
  • Travaux pratiques :
    • Création de services applicatifs pour définir des méthodes d’accès aux données
    • Injection des services dans les contrôleurs

Les vues avec le moteur de templates Blade (5 heures)

  • Le moteur de templates Blade
  • Principe des sections de contenu
    • Définition et héritage
  • Création de gabarits (Layouts)
  • Le langage de Blade
    • Gestion des données à afficher
    • Les structures de contrôle (conditionnelle et itérative)
  • Inclusion de template
  • Gestion des ressources statiques
    • Images, fichiers JS et CSS
  • Les composants
    • Création de composants réutilisables
  • Travaux pratiques :
    • Création de vues Blade
    • Lien avec les contrôleurs pour l’échange de données

La gestion des formulaires (5 heures)

  • Initialisation et affichage d’un formulaire
    • Les différents types de champs de formulaire
  • Traitement des données POST
    • Le lien avec la couche modèle
    • Association d'une entité à un formulaire
  • Mise en place des contraintes de validation
    • Gestion des erreurs de validation et de leurs messages
  • Travaux pratiques :
    • Création de formulaire dans les vues nécessitant de la saisie de données
    • Implémentation de formulaires réutilisables
    • Exploration des différents types de champs
    • Ajouts de contraintes de validation sur les données saisies

Sécurité d’une application Laravel (3 heures)

  • Principe d’authentification
    • Gestion de l'authentification avec Laravel
  • Gestion de comptes utilisateurs
    • Gérer ses utilisateurs via Eloquent
  • Contrôleurs de connexion et de création de compte
  • Principe de contrôle d’accès
  • Mise en place de politique de contrôle d’accès
    • Gestion de droits et rôles liés à un utilisateurs
  • Travaux pratiques :
    • Implémentation d’une stratégie de sécurité sur une partie de l’application
    • Mise en place de rôles applicatifs pour la répartition des permissions d’accès

 

 

Délais d'accès à la formation


Les inscriptions sont possibles jusqu'à 48 heures avant le début de la formation.

Dans le cas d'une formation financée par le CPF, ENI Service est tenu de respecter un délai minimum obligatoire de 11 jours ouvrés entre la date d'envoi de sa proposition et la date de début de la formation.

Modalités et moyens pédagogiques, techniques et d'encadrement


Formation avec un formateur, qui peut être suivie selon l’une des 3 modalités ci-dessous :

1 - Dans la salle de cours en présence du formateur.

2 - Dans l’une de nos salles de cours immersives, avec le formateur présent physiquement à distance. Les salles immersives sont équipées d’un système de visio-conférence HD et complétées par des outils pédagogiques qui garantissent le même niveau de qualité.

3 - Depuis votre domicile ou votre entreprise. Vous rejoignez un environnement de formation en ligne, à l’aide de votre ordinateur, tout en étant éloigné physiquement du formateur et des autres participants. Vous êtes en totale immersion avec le groupe et participez à la formation dans les mêmes conditions que le présentiel. Pour plus d’informations : Le téléprésentiel – notre solution de formation à distance.


Le nombre de stagiaires peut varier de 1 à 12 personnes (5 à 6 personnes en moyenne), ce qui facilite le suivi permanent et la proximité avec chaque stagiaire.

Chaque stagiaire dispose d’un poste de travail adapté aux besoins de la formation, d’un support de cours et/ou un manuel de référence au format numérique ou papier.

Pour une meilleure assimilation, le formateur alterne tout au long de la journée les exposés théoriques, les démonstrations et la mise en pratique au travers d’exercices et de cas concrets réalisés seul ou en groupe.

Modalités d'évaluation des acquis


En début et en fin de formation, les stagiaires réalisent une auto-évaluation de leurs connaissances et compétences en lien avec les objectifs de la formation. L’écart entre les deux évaluations permet ainsi de mesurer leurs acquis.

En complément, pour les stagiaires qui le souhaitent, certaines formations peuvent être validées officiellement par un examen de certification. Les candidats à la certification doivent produire un travail personnel important en vue de se présenter au passage de l'examen, le seul suivi de la formation ne constitue pas un élément suffisant pour garantir un bon résultat et/ou l'obtention de la certification.

Pour certaines formations certifiantes (ex : ITIL, DPO, ...), le passage de l'examen de certification est inclus et réalisé en fin de formation. Les candidats sont alors préparés par le formateur au passage de l'examen tout au long de la formation.

Moyens de suivi d'exécution et appréciation des résultats


  • Feuille de présence, émargée par demi-journée par chaque stagiaire et le formateur.
  • Evaluation qualitative de fin de formation, qui est ensuite analysée par l'équipe pédagogique ENI.
  • Attestation de fin de formation, remise au stagiaire en main propre ou par courrier électronique.

Qualification du formateur


La formation est animée par un professionnel de l’informatique et de la pédagogie, dont les compétences techniques, professionnelles et pédagogiques ont été validées par des certifications et/ou testées et approuvées par les éditeurs et/ou notre équipe pédagogique.

Il est en veille technologique permanente et possède plusieurs années d’expérience sur les produits, technologies et méthodes enseignés.

Il est présent auprès des stagiaires pendant toute la durée de la formation.