Logo GraphQL

Formation GraphQL

GraphQL (Graph Query Language) est une architecture et un langage de requête permettant de faire discuter des programmes clients et serveurs. Il a été créé par Facebook à partir de 2012, c'est une alternative à d'autres web services comme les APIs REST ou le RPC. Dans notre formation GraphQL vous apprendrez à construire des requêtes et des mutations précises, à concevoir et implémenter un serveur GraphQL, à consommer une API GraphQL avec un client JavaScript et à optimiser vos requêtes. Cette formation GraphQL vous permettra également d'acquérir des connaissances sur les fonctionnalités avancées de GraphQL et les outils disponibles pour vous aider à développer des API performantes et flexibles.

Objectifs pédagogiques

  • Découvrir les concepts clés de GraphQL
  • Maitriser la syntaxe de requêtes et de mutations
  • Concevoir un serveur GraphQL avec Express
  • Consommer son API avec un client JavaScript

Pré-requis

  • Bases de JavaScript
  • Connaissance d'une architecture client / serveur (REST, RPC...)

Public

  • Développeurs
  • Chefs de projets

Programme

Jour 1

Introduction

  • Comparaison avec les APIs REST, RPC...
  • Les origines de GraphQL
  • Premières requêtes (Query) avec GraphiQL ou GraphQL Playground

Les concepts clés de GraphQL

  • Décrire des données avec le Schema Definition Language (SDL)
  • Fonctionnement du côté serveur : Resolver
  • Consommer une API du côté client (fetch, Apollo, Relay...)

Concevoir un serveur GraphQL

  • La souplesse du système de type
  • Validation, nullabilité et gestion des erreurs
  • Affiner grâce aux arguments
  • Modifier des données avec les Mutations
  • Un serveur GraphQL complet avec Express
  • Les approches Code First et Schema First

Jour 2

Fonctionnalités Avancées

  • Les types abstraits
  • Type scalaires personnalisés, directives, subscribtion, introspection...
  • Identification globale
  • Listes et pagination
  • Évolution d’une API
  • Combiner plusieurs APIs GraphQL

Mise en production

  • Optimisations des performances avec cache et DataLoader
  • Monitoring des applications
  • Introduction à la sécurité

Méthodes mobilisées

  • Un formateur validé par nos équipes techniques et pédagogiques sera présent pendant toute la durée de la formation
  • Pour les formations en présentiel, une salle de formation sera mise à disposition et équipée d'ordinateurs portables, d'un accès Wi-Fi, d'un projecteur et d'un tableau blanc. En distanciel la session sera suivie sur Zoom ou autre outil de visioconférence sur demande (Teams, Webex, Google Meet...).
  • Un support de cours en version numérique sera remis à chaque participant

Modalités d’évaluation

  • Questions orales ou écrites (QCM)
  • Exercices pratiques
  • Auto-positionnement en amont et aval de la formation

Accessibilité aux personnes handicapées

Nous nous engageons à rendre notre formation GraphQL accessible aux personnes en situation de handicap. Merci de nous contacter afin que nous puissions réaliser les adaptations nécessaires en amont de la formation.
Dernière modification le 05/04/2024