Garçon devant un ordinateur.jpg
Hollie Little Pink Laptop.jpg
À propos • Aide • Le Livre d'or
Les lecteurs de Vikidia demandent des articles en plus. Voyez la liste d'articles à créer, et venez nous aider à les rédiger !

Code source

Une page de Vikidia, l’encyclopédie junior
Aller à la navigation Aller à la recherche
Un exemple de code : C++
Un autre exemple : HTML

En informatique, le code source d'un programme est un texte qui explique à l'ordinateur les différentes étapes qu'il doit exécuter pour faire fonctionner ce programme.

Le code source est toujours écrit par un programmeur dans un langage de programmation.

Traduction du code source en exécutable[modifier | modifier le wikicode]

Contrairement au programmeur, l'ordinateur ne peut pas comprendre directement le code source. Il ne comprend qu'un seul langage : le langage binaire, qui est formé d'une suite de 0 et de 1.

Un programme spécial permet à l'ordinateur de transformer le code source pour pouvoir le comprendre et l'exécuter. Suivant les types de langages de programmation, ce programme spécial est :

  • soit un interpréteur, qui lit et traduit le code source en langage binaire au fur et à mesure de l'exécution ;
  • soit un compilateur, qui traduit les fichiers du code source pour donner des fichiers du programme compilé en langage binaire exécutable, une fois pour toute.

Dans le premier cas, l'ordinateur a besoin du code source et de l'interpréteur pour exécuter le programme. Dans le deuxième, par contre, l'ordinateur n'a besoin que du code exécutable, qu'il comprend très bien puisque le compilateur le lui a traduit.

Utilité du code source pour l'utilisateur[modifier | modifier le wikicode]

Le langage binaire est un langage très compliqué, que l'ordinateur comprend très facilement mais il est presque impossible de comprendre le code exécutable pour un être humain. C'est pour cela que pour pouvoir comprendre ou changer le fonctionnement d'un programme, il est presque obligatoire d'avoir le code source de ce programme.

Les sociétés qui écrivent et vendent des logiciels propriétaires ne donnent presque jamais le code source de leurs programmes. Ils ne donnent que les fichiers exécutables, car ils ne veulent pas que ceux qui utilisent leurs programmes puissent comprendre ou changer le fonctionnement de ces programmes.

Avec les logiciels libres, en revanche, le code source est donné gratuitement pour que les utilisateurs puissent en faire ce qu'ils veulent ou, s'ils ne sont pas programmeurs, pour qu'ils puissent payer des informaticiens pour qu'ils leur changent les programmes comme ils le veulent.

Exemple de code dans une page Web[modifier | modifier le wikicode]

<html>

<head>

<title>Idée d'occupation</title>

<script language="javascript">

function afficheMessage() {

var rep=prompt('OK. Ton activité, tu veux la faire tout seul ou à plusieurs ?');

if (rep=="Tout seul" || rep=="tout seul") {

alert('Lis un livre !');

  } else {

alert('Faites un jeu de société!');

}

}

</script>

</head>

<body bgcolor="000000">

<font face="Arial" color="ffffff"><div style="text-align:center" >Si tu veux une idée de quoi faire pendant ton temps libre, clique sur le bouton ci-dessous :<br />

<input type="button" value="Idée d'occupation" onClick="afficheMessage()"></div></font>

</body>

</html>


Afin d'obtenir une page Web comprenant ce code, il faut le mettre dans un éditeur de texte basique (exemple : Windows Notepad) et l'enregistrer sous en .html puis l'ouvrir dans un navigateur Web. Ce code n'est qu'une page Web, pas un programme ; il est écrit en HTML (langage de balises servant à faire des pages Web) et JavaScript (langage de programmation permettant d'ajouter des fonctions interactives à des pages Web et de coder des programmes ou des parties de programmes. JavaScript ne doit pas être confondu avec JSON, qui permet de gérer des données.

Exemple de programme[modifier | modifier le wikicode]

Le programme suivant1 permet de calculer la distance entre deux points :

En langage C[modifier | modifier le wikicode]

Dans le langage de programmation C, le code source de ce programme est :

struct    point
{
    float x;
    float y;
};

float    distance(struct point p0,
           struct point p1)
{
    float xdist = p1.x - p0.x;
    float ydist = p1.y - p0.y;

    return (sqrt(xdist * xdist + ydist * ydist));
}

En code exécutable[modifier | modifier le wikicode]

Voici le même programme après l'avoir compilé en code exécutable (puis transformé du binaire en décimal) :

  1314258944   -232267772   -231844864   1634862
  1411907592   -231844736   2159150     1420296208
  -234880989   -234879837   -234879966   -232295424
  1644167167   -3214848    1090581031   1962942495
  572518958    -803143692   1314803317

Voir aussi[modifier | modifier le wikicode]

Notes et références[modifier | modifier le wikicode]

  1. Source : « Pourquoi les logiciels devraient être libres » (Richard Stallman, 1992) http://www.gnu.org/philosophy/shouldbefree.fr.html
Portail de l'informatique —  Tous les articles sur son histoire, les logiciels, Internet…