Pré-décrémenter

Définition, exemples et bonnes pratiques

À retenir

  • S'écrit généralement avec deux signes moins placés avant la variable (--i).
  • La soustraction de 1 est l'action prioritaire.
  • La variable d'origine est modifiée de façon permanente.

Action de diminuer la valeur d'une variable numérique de 1 immédiatement, avant que cette valeur ne soit utilisée dans le reste d'un calcul ou d'une instruction. On peut comparer cela à un ascenseur qui descend d'un étage avant d'ouvrir ses portes pour laisser entrer les passagers.

Étymologie

Issu du préfixe latin prae- (devant/avant) et du mot décrémenter (diminuer une quantité). Le terme souligne l'ordre de priorité de l'opération mathématique par rapport à l'exécution du code.

Exemples d'usage

  • En JavaScript ou en C : l'expression --x diminue la valeur de x avant que le programme ne lise la variable.
  • Dans un calcul complexe : si a = 10, l'opération b = --a + 5 donnera b = 14 (car a devient 9 avant l'addition).

Cas d'usage

On retrouve ce concept principalement dans la manipulation de boucles (pour répéter une action), dans la gestion d'index de tableaux ou lors de calculs mathématiques où la mise à jour immédiate d'un compteur est nécessaire.

Bonnes pratiques

Évitez d'utiliser la pré-décrémentation à l'intérieur d'expressions trop longues ou imbriquées. Cela peut rendre le code difficile à comprendre pour d'autres développeurs. Si la lisibilité est en jeu, il vaut mieux décrémenter sur une ligne séparée.

Synonymes

décrémentation préfixée

Antonymes

post-décrémenter pré-incrémenter

Conseil

Quand vous lisez du code, si vous voyez les signes -- placés à gauche de la variable, rappelez-vous : 'Je change la valeur d'abord, je l'utilise ensuite'.

Questions fréquentes

Quelle est la différence avec la post-décrémentation ?

La pré-décrémentation retire 1 AVANT d'utiliser la valeur, alors que la post-décrémentation retire 1 APRÈS avoir utilisé la valeur actuelle.

Sur quels types de données cela fonctionne-t-il ?

Principalement sur les nombres entiers et les nombres à virgule (flottants).