En bref
Une variable est une boîte étiquetée dans la mémoire de l’ordinateur : l’étiquette est son nom (score, prenom, prix), le contenu est sa valeur (0, « Sami », 19.99) — et comme son nom l’indique, ce contenu peut varier au fil du programme. C’est le tout premier concept de la programmation, celui sans lequel rien d’autre n’existe : un programme passe son temps à ranger des valeurs dans des variables, à les lire et à les modifier. La ligne score = score + 1, qui choque tous les anciens matheux, se lit ainsi : « prends le contenu actuel de la boîte score, ajoute 1, range le résultat dans la même boîte » — le signe = n’est pas une égalité mathématique mais une affectation, un rangement. Ajoute deux idées — chaque valeur a un type (nombre, texte, vrai/faux) et un bon nom de variable se comprend sans explication — et tu tiens le concept complet, identique dans tous les langages.
C’est le premier mot du vocabulaire, la première ligne de tous les tutoriels, et pourtant on l’explique souvent trop vite. Comprendre une variable — vraiment, avec l’intuition et pas seulement la définition — débloque toute la suite du parcours : ce guide prend le temps qu’il faut, exemples en Python et JavaScript à l’appui, dans l’esprit de notre guide complet pour apprendre à coder.
Une variable, expliquée avec les mains
Imagine une étagère de boîtes étiquetées. Chaque boîte porte un nom écrit sur l’étiquette — score, prenom, prix_total — et contient une valeur — 0, « Sami », 19.99. Créer une variable, c’est poser une nouvelle boîte sur l’étagère avec son étiquette ; lire une variable, c’est regarder dedans ; modifier une variable, c’est remplacer le contenu — l’étiquette, elle, ne bouge pas. Toute la programmation tient dans ce va-et-vient : un programme est une suite d’instructions qui remplissent, consultent et mettent à jour des boîtes. Quand ton jeu affiche « Score : 12 », il lit la boîte score ; quand tu marques un point, il y range 13 à la place.
Deux idées complètent l’image. Le contenu a une nature — un type, en jargon : nombre entier, nombre à virgule, texte (les développeurs disent « chaîne de caractères »), ou vrai/faux (le booléen). Certaines langues de programmation exigent d’annoncer la nature sur l’étiquette, d’autres la devinent — mais la nature existe toujours, et mélanger les natures (additionner un texte et un nombre) est la source de bien des surprises. Le nom est un message, enfin : la machine accepterait x ou truc, mais ton programme sera relu — par toi dans trois semaines, par d’autres ensuite — et prix_ttc raconte ce que x cache ; bien nommer ses boîtes est la première habitude du bon vocabulaire de programmeur, et elle se prend au premier jour.
À quoi ça ressemble dans le code
En Python, la boîte se pose en une ligne : score = 0 crée la variable score avec la valeur 0 — pas de mot-clé, pas de cérémonie, le langage devine la nature (ici un entier). On la lit en l’utilisant : print(score) affiche son contenu ; on la modifie en la réaffectant : score = score + 1. Lis cette dernière ligne dans le bon ordre — la droite d’abord : « calcule score + 1 (soit 0 + 1), puis range le résultat dans la boîte score ». Le signe = est une flèche de rangement (droite vers gauche), pas une équation : c’est LA gymnastique mentale du concept, et elle devient un réflexe en une semaine de pratique sur les bases du Python.
En JavaScript, même idée avec un mot-clé d’annonce : let score = 0; pose une boîte modifiable, const ville = « Lyon »; pose une boîte scellée — une constante, qu’on ne pourra pas réaffecter, le choix par défaut du JavaScript moderne pour tout ce qui ne bougera pas. La suite est identique : score = score + 1; (avec le raccourci score += 1 que tu croiseras partout, dans les deux langages). Deux dialectes, un seul concept — et c’est la grande nouvelle de tout ce silo : la variable apprise ici te servira telle quelle en JavaScript, en PHP (où l’étiquette commence par un $), en Java (où la nature s’annonce), partout. Les concepts voyagent ; seule l’orthographe change.
Les pièges classiques (et comment les éviter)
Piège 1 : lire = comme une égalité. Le réflexe scolaire fait buter tout le monde sur score = score + 1 (« impossible, mathématiquement ! »). Le remède : verbaliser systématiquement « prend la valeur » — score prend la valeur score plus un — jusqu’à ce que la flèche droite-vers-gauche soit naturelle. Piège 2 : la faute de frappe silencieuse. Écrire Score là où tu as créé score (les langages distinguent majuscules et minuscules) ou prenon pour prenom crée une erreur « variable non définie » — ou pire, une deuxième boîte fantôme. Le remède : des noms simples, l’autocomplétion de l’éditeur, et le réflexe de relire le nom exact quand « ça devrait marcher ».
Piège 3 : confondre le nom et la valeur. Afficher prenom (le contenu de la boîte : Sami) et afficher « prenom » (le texte littéral p-r-e-n-o-m) sont deux choses différentes — les guillemets fabriquent du texte brut, leur absence désigne une boîte. Piège 4 : la boîte jamais remplie. Utiliser une variable avant de lui avoir donné une valeur — l’erreur « n’existe pas » la plus fréquente du premier mois ; le remède est une habitude : toute boîte se crée avec une valeur de départ (score = 0, total = 0, message = « »). Voilà le concept complet — et le meilleur moyen de le sceller est de le faire travailler : les exercices Python et JavaScript le convoquent dès la première ligne, et ses voisins de silo t’attendent : la boucle qui répète, la condition qui décide, la fonction qui regroupe — les trois se nourrissent de variables, comme tout le reste.
Questions fréquentes
C’est quoi une variable en programmation, en une phrase ?
Une boîte étiquetée dans la mémoire de l’ordinateur : son nom permet de la désigner (score, prenom), sa valeur est ce qu’elle contient (0, « Sami ») — et le programme passe son temps à créer, lire et modifier ces boîtes. C’est la brique de base de toute la programmation.
Que signifie score = score + 1 ?
« Prends la valeur actuelle de score, ajoute 1, et range le résultat dans la même boîte. » Le signe = n’est pas l’égalité des mathématiques mais une affectation : la partie droite se calcule d’abord, puis vient se ranger dans la variable de gauche. Verbaliser « prend la valeur » installe le réflexe.
Quelle différence entre let et const en JavaScript ?
let déclare une variable dont la valeur pourra changer (un score, un compteur) ; const déclare une constante scellée à sa création (un nom, une configuration). Le réflexe du JavaScript moderne : const par défaut, let uniquement quand la réaffectation est réellement nécessaire.
Pourquoi bien nommer ses variables est-il important ?
Parce que le code se relit plus qu’il ne s’écrit : prix_ttc se comprend sans explication là où x oblige à enquêter. Un bon nom décrit le contenu, évite les fautes de frappe et rend le débogage dix fois plus rapide — c’est la première habitude de qualité à prendre, dès le premier programme.
Sources
- Python.org — la documentation officielle du langage
- MDN Web Docs — la référence JavaScript en français
Cet article a une vocation informative et pédagogique. Les plateformes, outils et formations éventuellement cités le sont à titre d’exemple ; compare plusieurs options avant de t’engager ou de payer.

