Image de couverture - Définition : le Sucre Syntaxique

Définition : le Sucre Syntaxique

Le sucre syntaxique est un procédé visant à simplifier l'écriture de code en offrant aux développeurs une syntaxe alternative plus légère.

Icône de calendrier
Icône de chronomètre 2 min

Qu’est-ce que le sucre syntaxique ?

En programmation, le sucre syntaxique (ou « syntactic sugar » en anglais) est caractérisé par une écriture alternative, plus concise et/ou plus facile à lire, pour une fonctionnalité spécifique.

Le sucre syntaxique n’ajoute pas de nouvelles fonctionnalités ou de nouveaux concepts à un langage de programmation, il y intègre seulement une syntaxe alternative plus « Developer Friendly » (DX).

En simplifiant l’écriture et la lisibilité du code, le sucre syntaxique contribue à faciliter la maintenance et améliorer la productivité des développeurs.

Démonstration

Déclaration d’un objet en JS

Par exemple, en JavaScript, la déclaration d’un objet se fait avec la syntaxe new Object().

// Syntaxe originelle
let user = new Object();
user.firstname = 'John';
user.lastname = 'Doe';

Et pourtant, même si vous vous êtes formé au langage JavaScript, je suis sûr que cette syntaxe ne vous est pas familière…

Mais pourquoi cela ? 🤔

Car la syntaxe d’objet littéral permet de créer un objet de manière plus concise et plus lisible en faisant usage des caractères { ... }. On parle alors de sucre syntaxique. Voici un extrait de code équivalent :

// Sucre syntaxique
let user = { firstname: 'John', lastname: 'Doe' };

D’autres exemples

Le sucre syntaxique peut également être utilisé pour simplifier d’autres constructions de langage, telles que :

  • Les conditions (via les opérateurs ternaires)
  • Les boucles
  • Les fonctions fléchées
  • Les templates de chaînes de caractères pour simplifier la concaténation
  • Les objets et classes
  • Etc.

Avantages du sucre syntaxique

Le sucre syntaxique est apprécié des développeurs pour plusieurs raisons, en voici les principales :

  1. Saisie plus rapide
  2. Lisibilité accrue
  3. Simplification des opérations courantes/redondantes
  4. Facilité de maintenance
  5. Productivité accrue
  6. Réduction du code « boilerplate » (code verbeux et répétitif souvent inévitable)

Lire aussi