Flag

Définition, exemples et bonnes pratiques

À retenir

  • Un flag est généralement une valeur booléenne (vrai ou faux).
  • Il sert de témoin pour déclencher ou bloquer une action.
  • C'est un élément fondamental pour la prise de décision dans un programme.

Un flag (ou drapeau) est un petit indicateur logique qui sert à signaler si une condition spécifique est remplie ou non. C'est l'équivalent d'un interrupteur : il est soit levé (vrai), soit baissé (faux), ce qui permet à un programme de savoir s'il doit effectuer une action particulière ou changer de comportement.

Étymologie

Emprunté à l'anglais flag (drapeau). Le terme s'inspire de la signalétique physique (comme les drapeaux maritimes ou ferroviaires) utilisée pour transmettre un message simple à distance. En informatique, il désigne une variable binaire ou une option de configuration.

Exemples d'usage

  • Une variable estConnecte qui passe à true (vrai) une fois que l'utilisateur a saisi son mot de passe.
  • L'option -v (pour verbose) ajoutée à une commande pour demander au logiciel d'afficher plus de détails sur son fonctionnement.
  • Un marqueur dans une base de données pour indiquer qu'un message a été lu ou supprimé.

Cas d'usage

On utilise les flags dans presque tous les domaines : en développement pour contrôler le flux d'un algorithme, en système pour activer des fonctionnalités via la ligne de commande, ou en cybersécurité lors de compétitions (CTF) où le « flag » est le code secret à récupérer pour prouver une intrusion réussie.

Bonnes pratiques

Pour rendre le code lisible, il est conseillé de nommer les flags de façon explicite, souvent en commençant par un verbe d'état comme is, has ou can (ex: is_valid). Évitez d'accumuler trop de flags dans une seule fonction, ce qui rend la logique difficile à suivre (phénomène de la « soupe de flags »).

Synonymes

indicateur témoin variable booléenne marqueur drapeau

Antonymes

valeur continue variable quantitative

Conseil

Quand vous débutez, considérez un flag comme un pense-bête pour votre code : « Si ce drapeau est levé, alors fais ceci ». C'est l'outil de base pour créer de l'interactivité et de la logique conditionnelle.

Questions fréquentes

Quelle est la différence entre un flag et une variable ?

Un flag est une variable, mais sa fonction est spécifique : il sert uniquement d'indicateur d'état (oui/non), alors qu'une variable peut contenir n'importe quelle donnée (un nom, un nombre complexe, etc.).

C'est quoi un flag en ligne de commande ?

C'est une option courte, souvent précédée d'un tiret (ex: -f), qui modifie le comportement par défaut d'un outil sans nécessiter de valeur supplémentaire.