Argument muet

Définition, exemples et bonnes pratiques

À retenir

  • C'est un emplacement réservé dans la définition d'une fonction.
  • Il est remplacé par une valeur réelle (argument effectif) lors de l'appel.
  • Sa portée est limitée à l'intérieur de la fonction.

Un argument muet est un nom symbolique utilisé lors de la création d'une fonction pour désigner les données qu'elle recevra plus tard. Imaginez-le comme une étiquette temporaire ou une case vide sur un formulaire : il réserve la place pour une valeur réelle qui ne sera connue qu'au moment où le programme s'exécutera.

Étymologie

Le terme vient du vocabulaire mathématique et logique. On le dit « muet » car son nom n'a aucune importance pour le résultat final : que vous appeliez une variable x ou nombre dans le calcul d'un carré, l'opération reste la même. En anglais, on parle de formal parameter ou dummy argument.

Exemples d'usage

  • Dans la définition calculer_surface(longueur, largeur), les mots longueur et largeur sont des arguments muets.
  • En mathématiques, dans la fonction f(x) = x + 2, la lettre x est l'argument muet.

Cas d'usage

On rencontre ce concept dès que l'on définit des fonctions, des procédures ou des méthodes dans presque tous les langages de programmation (Python, JavaScript, C++, etc.). Il permet de rendre le code générique et réutilisable.

Bonnes pratiques

Même si l'argument est « muet » et que son nom n'influe pas sur le calcul, il est crucial de lui donner un nom explicite. Utilisez prix_unitaire plutôt que p pour faciliter la lecture du code par d'autres développeurs.

Synonymes

paramètre formel variable formelle paramètre fictif

Antonymes

argument effectif argument réel paramètre réel

Conseil

Pour bien comprendre, visualisez l'argument muet comme une variable locale qui n'existe que le temps où la fonction travaille. Dès que la fonction a fini, ce nom disparaît de la mémoire du programme.

Questions fréquentes

Quelle est la différence avec un argument effectif ?

L'argument muet est le nom dans la définition (ex: 'nom'), tandis que l'argument effectif est la valeur réelle transmise lors de l'exécution (ex: 'Alice').

Peut-on s'en passer ?

Certaines fonctions n'ont pas besoin d'arguments pour fonctionner, elles sont dites sans paramètres.