Académique Documents
Professionnel Documents
Culture Documents
Cet article ne cite aucune source et peut contenir des informations erronées (signalé en
novembre 2021).
Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de
qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références
utiles à sa vérifiabilité et en les liant à la section « Notes et références » (modifier l'article).
Bing [archive]
Cairn [archive]
DuckDuckGo [archive]
E. Universalis [archive]
Gallica [archive]
Google [archive]
G. Books [archive]
G. News [archive]
G. Scholar [archive]
Persée [archive]
Qwant [archive]
(zh) Baidu [archive]
(ru) Yandex [archive]
(wd) trouver des œuvres sur code source
En informatique, le code source est un texte qui présente les instructions composant un
programme sous une forme lisible, telles qu'elles ont été écrites dans un langage de
programmation. Le code source se matérialise généralement sous la forme d'un ensemble de
fichiers texte.
Le code source est souvent traduit — par un assembleur ou un compilateur — en code binaire
composé d'instructions exécutables par le processeur. Il peut sinon être directement interprété
à l'exécution du programme. Dans ce deuxième cas, il est parfois traduit au préalable en un
code intermédiaire dont l'interprétation est plus rapide.
Sommaire
1 Dénomination
2 Histoire
3 Principe
o 3.1 Types de code sources
o 3.2 Coloration syntaxique
4 Analogie avec la recette de cuisine
5 Aspects légaux
6 Notes et références
7 Voir aussi
o 7.1 Articles connexes
Dénomination
L'expression est une traduction de l'anglais source code. Les expressions omettant le terme de
code sont communes : les sources, le source.
Histoire
Carte perforée contenant la ligne d'instruction « Z(1) = Y + W(1) ».
Dans les tout premiers temps de l'informatique, les programmes étaient entrés dans la
mémoire de l'ordinateur par l'intermédiaire des interrupteurs du pupitre de commande, sous
forme du codage binaire des instructions machines. Ce qui ne convenait qu'à de tout petits
programmes. Ils ont ensuite été chargés depuis des bandes perforées, puis des cartes
perforées.
Très rapidement, les programmes ont été rédigés dans un langage symbolique, langage
d'assemblage ou langage évolué comme Fortran, Cobol, puis traduit automatiquement par un
programme (assembleur, compilateur).
Avec l'apparition des disques magnétiques et des consoles interactives, des éditeurs de lignes
puis des éditeurs de textes ont été utilisés pour taper et modifier le code source.
Principe
Types de code sources
Un logiciel est une suite d'instructions données à une machine. Un processeur ne peut
exécuter que des instructions représentées sous une forme binaire particulière. Sauf
mécanismes expérimentaux, il n'est pas possible pour un être humain de saisir directement un
code binaire dans la représentation qu'en attend le processeur : un être humain ne peut pas
écrire directement les champs de bits aux adresses attendues. Il est obligé de passer par un
code distinct appelé code source, et qui est par la suite traduit dans la représentation binaire
attendue par la machine puis chargé et exécuté par la cible.
Toutefois, l'écriture d'un code sous forme binaire, même dans un fichier séparé, pose de
nombreux problèmes aux êtres humains. C'est une représentation uniquement constituée d'une
suite ininterrompue de 0 et de 1 qui est difficile à lire, à écrire et à maintenir pour l'être
humain. La diversité des microprocesseurs et des composants présents dans un ordinateur ou
automate, implique qu'un code binaire généré pour un système ne puisse pas être a priori le
même que sur une machine distincte. Aussi, il existe autant de codes binaires que de
configurations et une complexité accrue excluant que l'être humain puisse concevoir
simplement un code binaire de grande ampleur.
Pour éviter ces écueils, et puisqu'une traduction est toujours nécessaire, l'être humain écrit un
code textuel afin qu'il soit plus lisible, plus compréhensible et plus simple à maintenir : c'est le
code source écrit dans un langage de programmation. Il est, dans la plupart des cas, plus
lisible, plus simple à écrire et indépendant du système cible. Un programme tiers
(compilateur, interpréteur ou machine virtuelle) se charge de la traduction du code source en
code binaire exécutable par la cible.
Le code généré par l'être humain est appelé code source ; la façon dont est rédigé ce code
source est appelée langage de programmation ; le traducteur de ce code dans sa représentation
binaire est appelé compilateur, interpréteur ou machine virtuelle selon les modalités de la
traduction.
Dans la plupart des langages, on peut distinguer différents éléments dans un code source :
les éléments décrivant l’algorithme et les données (le code source proprement dit) :
o des symboles identifiant des variables, des mots clefs dénotant des instructions,
des représentations de données ;
o des constantes littérales.
les commentaires, qui documentent le code source le plus souvent en langage naturel,
destinés aux relecteurs du code source. Ils ne sont pas nécessaires à la production du
code exécutable mais peuvent être utilisés par le compilateur pour, par exemple,
produire automatiquement de la documentation.
Coloration syntaxique
Un code est plus facile à lire et à écrire avec un éditeur fournissant une coloration syntaxique
permettant de distinguer les différents éléments du code source. Les commentaires peuvent
par exemple être mis en vert.
Ainsi, une personne dégustant un plat est en mesure de deviner les ingrédients qui le
composent et d'imaginer comment le réaliser. Néanmoins, pour un plat très raffiné et subtil
(comme pourrait l'être un programme), il est fort probable qu'elle ignore le mode opératoire
du cuisinier. Pour le connaître, une recette détaillée serait nécessaire (pour un programme, la
recette peut compter plusieurs millions de lignes de code). La solution alternative à cela serait
d'acheter des plats préparés, c'est un peu ce que l'on fait lorsqu'on achète des logiciels.
Aspects légaux
Le code source peut être public ou privé (voir logiciel libre et logiciel propriétaire). Toutefois,
le code binaire n'étant qu'une traduction du code source, il est toujours possible d'étudier un
logiciel à partir de son code binaire. La légalité des techniques utilisées à ces fins dépend du
pays et de l'époque. Elle peut notamment être mise en œuvre pour percer les secrets d'une
machine comme l'ES3B.
Notes et références
Cette section est vide, insuffisamment détaillée ou incomplète. Votre aide est la bienvenue !
Comment faire ?