GraphQL

Architecture 🟡 Mid

Définition

Langage de requête pour APIs ou le client spécifié exactement les données souhaitées. Un seul endpoint, schema type, pas d'over/under-fetching.

Analogie

Commander a la carte au restaurant : tu choisis exactement chaque plat et garniture, rien de plus.

Exemple de code

query {
  user(id: 42) {
    name
    email
    orders(last: 5) {
      total
      status
    }
  }
}

Cas d'usage

Frontends avec des besoins de données varies (mobile vs web), dashboards complexes.

Anti-pattern

Problème N+1 : chaque field déclenché une requête DB sans DataLoader.

Termes liés

#architecture#interview#api

En entretien

  1. Explique-moi GraphQL et pourquoi on l'adopte.

    C'est un langage de requête pour APIs où le client spécifie exactement les données souhaitées, via un seul endpoint et un schéma typé, ce qui évite l'over et l'under-fetching. C'est adapté aux frontends aux besoins de données variés, comme mobile vs web, ou aux dashboards complexes.

  2. Quel problème de performance classique faut-il surveiller avec GraphQL ?

    Le problème N+1, où chaque champ déclenche une requête base de données séparée sans DataLoader pour les regrouper. Un DataLoader batch et met en cache ces appels pour éviter l'explosion de requêtes.

Dans l'actu

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre