Qu'est-ce que le code source ?
Le code source est le texte lisible d'un programme, écrit par un programmeur dans un langage comme Python, Java ou C et enregistré dans des fichiers texte brut, qu'un compilateur ou un interpréteur transforme en instructions qu'un ordinateur peut exécuter.
Mis à jour le 24 septembre 2026
Ouvre n'importe quel fichier qui se termine par .py, .c ou .java dans un simple éditeur de texte et tu lis du code source. C'est le même genre de fichier qu'une liste de courses : des lettres, des chiffres, des espaces et des retours à la ligne. Ce qui en fait un programme, c'est que le texte suit les règles d'un langage de programmation, si bien qu'un outil peut le transformer en instructions pour le processeur.
À quoi ressemble le code source
Voici un programme Python complet. Chaque ligne est du code source, y compris le commentaire, que l'ordinateur ignore et que le prochain programmeur lira.
Total: 12
Le même programme en C est aussi du code source, simplement dans un autre langage avec d'autres règles :
#include <stdio.h>
int main(void) {
int price = 4;
printf("Total: %d\n", price * 3);
return 0;
}
Une vraie application compte des milliers de fichiers comme ceux-ci. Le noyau Linux dépasse les 30 millions de lignes de code source, et une petite application web peut facilement compter quelques centaines de fichiers. Chaque fichier porte une extension qui indique aux outils quel langage il contient :
| Extension | Langage |
|---|---|
.py | Python |
.c, .h | C |
.cpp, .hpp | C++ |
.java | Java |
.js | JavaScript |
.go | Go |
.rs | Rust |
Le code source est du texte brut
Le code source n'a ni polices, ni couleurs, ni mise en forme cachée. Les couleurs que tu vois dans un éditeur sont ajoutées par l'éditeur pour faciliter la lecture ; elles ne sont pas enregistrées dans le fichier. C'est pour cela qu'on écrit du code dans un éditeur de code comme VS Code et jamais dans Microsoft Word : un traitement de texte enregistre des données de mise en forme et des guillemets « typographiques », et le résultat est un fichier que le langage ne sait pas lire, en général rejeté avec une erreur de syntaxe.
Comme ce n'est que du texte, un programme peut même garder le code source d'un autre programme dans une chaîne et l'exécuter :
<class 'str'>
3 lines of text
Total: 12
Jusqu'à la dernière ligne, source est une chaîne ordinaire. exec la transmet à Python, qui lit le texte et l'exécute. C'est toute la vie du code source en miniature : d'abord du texte, ensuite des instructions.
Comment le code source devient un programme qui s'exécute
Le processeur de ton ordinateur ne sait lire ni Python ni C. Il n'exécute que du code machine, c'est-à-dire des instructions binaires propres à un type de CPU (x86-64 dans la plupart des ordinateurs portables et des serveurs, ARM dans les téléphones et les Mac Apple Silicon). Il faut donc traduire. Il existe deux grandes façons de le faire :
- Un compilateur traduit tout le programme à l'avance. La commande
gcc hello.c -o hellolit le code source C et écrit un nouveau fichier,hello, rempli de code machine. Tu peux supprimerhello.censuite,hellofonctionne toujours. - Un interpréteur exécute directement le code source. La commande
python3 hello.pylance l'interpréteur Python, qui lithello.pyet exécute ses instructions. Aucun fichier de programme séparé n'est produit, donc le code source doit être présent à chaque exécution.
Beaucoup de langages combinent les deux. Le code source Java est compilé par javac en bytecode (fichiers .class), puis la machine virtuelle Java exécute ce bytecode. La comparaison complète se trouve sur la page compilateur ou interpréteur.
Code source, code objet et code machine
Ces trois termes décrivent le même programme à différentes étapes :
| Terme | Qui le lit | Exemple |
|---|---|---|
| Code source | Les humains et les compilateurs | total = price * 3 dans app.py |
| Code objet | L'éditeur de liens (linker) | hello.o, produit par gcc -c hello.c |
| Code machine (exécutable) | Le CPU | hello sous Linux ou macOS, hello.exe sous Windows |
Si tu ouvres un exécutable compilé dans un éditeur de texte, tu vois des symboles illisibles, parce que c'est du binaire et non du texte. Sur un Mac, les quatre premiers octets du programme hello ci-dessus valent cf fa ed fe en hexadécimal, la signature d'un exécutable Mach-O. Tu peux examiner ce genre de valeurs brutes avec le convertisseur de bases numériques.
Open source et code fermé
Savoir qui peut lire le code source est une question juridique autant que technique. Un logiciel open source publie son code source sous une licence qui permet à chacun de le lire, de le modifier et de le partager. Python, Linux et Firefox sont open source. Un logiciel fermé (propriétaire) ne fournit que le programme compilé. Microsoft Windows et Adobe Photoshop sont des logiciels fermés, et leur code source est un secret industriel.
Le code source est aussi protégé par le droit d'auteur, comme un livre. Trouver du code sur internet ne veut pas dire que tu as le droit de le réutiliser : vérifie le fichier de licence, souvent nommé LICENSE, avant de copier quoi que ce soit dans ton propre projet.
Idées reçues
- « Afficher le code source de la page montre le code source d'un site. » Cela montre le HTML, le CSS et le JavaScript que ton navigateur a reçus. La partie serveur du site (écrite en Python, Java, PHP ou dans un autre langage) ne quitte jamais le serveur, tu ne peux donc pas la voir.
- « Un décompilateur rend le code source d'origine. » Un décompilateur reconstruit du code lisible à partir d'un programme compilé, mais les commentaires ont disparu et les noms sont souvent perdus : le résultat est une supposition sur le code source, pas le fichier que les auteurs ont écrit.
- « Code et code source, c'est la même chose. » Le code source est la version écrite par des humains. « Code » est plus large et couvre aussi le code machine, le bytecode et le code généré.
- « Le code source doit être en anglais. » Les mots-clés comme
ifetprintsont des mots anglais, mais les noms de variables, les commentaires et les chaînes peuvent être dans n'importe quelle langue. Les fichiers source Python 3 sont en UTF-8 par défaut, doncprix = 4et# 合計を計算するsont tous les deux valides.
Pour aller plus loin
Le code source est vérifié avant de s'exécuter, et la première chose que rencontrent la plupart des débutants, c'est l'erreur de syntaxe. Pour voir en quoi les deux façons d'exécuter du code source diffèrent, lis ce qu'est un compilateur, puis compilateur ou interpréteur. Tu peux écrire et exécuter ton propre code source dans le navigateur avec le playground Python ou commencer le cours Python.
Questions fréquentes
Quel est un exemple de code source ?
app.py, un fichier C comme main.c, ou le JavaScript d'une page web. Même une seule ligne comme print("Hello") enregistrée dans un fichier .py compte. Des programmes comme Firefox ou Linux en contiennent des millions de lignes.Quelle est la différence entre le code et le code source ?
Comment obtenir le code source d'un programme ?
Le HTML est-il du code source ?
.html qu'écrit un développeur sont la source d'une page web, et les navigateurs appellent leur affichage « Code source de la page ». C'est aussi vrai pour les fichiers CSS et les fichiers JavaScript qu'une page charge.