Variable liée

Définition, exemples et bonnes pratiques

À retenir

  • Elle est définie et utilisée uniquement à l'intérieur d'un bloc (fonction, boucle).
  • Elle permet d'isoler le comportement d'un morceau de code.
  • Son nom peut être modifié sans affecter le reste du programme, tant qu'il est changé partout à l'intérieur de son bloc.

Une variable liée est une donnée dont la portée et la signification sont strictement limitées à un bloc de code précis, comme une fonction ou une boucle. Elle est "attachée" à ce contexte : en dehors de celui-ci, elle n'existe pas ou peut désigner tout autre chose. C'est un peu comme le mot "invité" lors d'une fête : il désigne des personnes précises tant que vous êtes dans la salle, mais n'a plus de sens une fois que vous êtes seul dans la rue.

Étymologie

Le terme provient du concept de "liaison" (binding en anglais). En logique mathématique et en informatique, on dit qu'une variable est liée lorsqu'elle est capturée par un opérateur (comme un paramètre de fonction). Elle s'oppose à la variable "libre" qui n'est pas confinée à une structure locale.

Exemples d'usage

  • Le paramètre n dans une fonction carre(n) { return n * n; } est une variable liée : il ne sert qu'à l'intérieur de cette fonction.
  • L'indice i dans une boucle for (int i = 0; ...) est lié à l'exécution de cette boucle spécifique.

Cas d'usage

Ce concept intervient principalement dans la gestion de la portée (scope) des langages de programmation. Il permet aux développeurs de réutiliser les mêmes noms de variables (comme x ou temp) dans différentes parties d'un programme sans qu'elles n'interfèrent entre elles.

Bonnes pratiques

Il est recommandé de limiter au maximum la portée des variables (en les gardant liées au bloc le plus petit possible) pour éviter les effets de bord imprévus. Attention au "shadowing" : c'est le fait de déclarer une variable liée avec le même nom qu'une variable déjà existante dans un contexte plus large, ce qui peut rendre le code difficile à lire.

Synonymes

variable muette variable locale

Antonymes

variable libre variable globale

Conseil

Pour bien débuter, visualisez les blocs de code comme des boîtes étanches. Une variable liée est un outil que l'on trouve à l'intérieur de la boîte, que l'on utilise pour travailler dedans, et que l'on range (ou détruit) avant d'en sortir.

Questions fréquentes

Une variable locale est-elle toujours une variable liée ?

Dans la grande majorité des cas en programmation courante, oui, car elle est liée au bloc de la fonction ou de la méthode où elle est déclarée.

Pourquoi parle-t-on de variable muette ?

On utilise ce terme car le nom choisi (x, i, toto) n'a aucune importance pour le résultat final du calcul ; il sert juste de 'place de parking' temporaire.