Logo Ordinateurs-de-Vote.org Citoyens et informaticiens
pour un vote vérifié par l'électeur

Code source : définition

1er juillet 2005

 
L’essentiel de l’intelligence d’un système informatique est dans son logiciel (en anglais : “software”). Celui-ci existe sous deux formes :


-  le “code source” : écrit et lisible par des humains, plus précisément une peuplade appelée programmeurs ou développeurs. C’est la description méthodique, et dans les moindres détails, de tout ce que fait le logiciel. Cette description est tapée comme vous taperiez une lettre, mais au lieu du français, dans un langage informatique. Il en existe des centaines, les plus connus ont pour nom : C, C++, Pascal, Basic, Java... Ces langages ont comme particularité de ne permettre aucune ambiguïté, contrairement aux langages naturels où un mot peut avoir plusieurs sens.
-  le “code binaire” ou “exécutable” formé de 0 et de 1, donc uniquement exploitable par l’ordinateur. Il est produit automatiquement à partir du “code source” au moyen d’une moulinette appelée compilateur. Il va faire s’animer l’ordinateur, au départ simple assemblage électronique inerte (en anglais : “hardware”, traduit par “matériel”).

A l’exception notable des Logiciels Libres ou Open Source [1], vous n’achetez qu’un droit d’utilisation de l’exécutable. Le code source reste secret et propriété de son concepteur. Sans lui, vous ne pourrez qu’observer le comportement apparent de l’exécutable. Des fonctionnalités cachées (oeuf de Pâques, cheat codes, backdoor...) ne se révéleront pas si on ne connaît pas l’astuce pour les déclencher.


Une analogie souvent employée est de présenter le code source comme une recette de cuisine. L’exécutable est alors ce qu’il y a dans votre assiette. Pour peu que le plat soit raffiné, vous ne devinerez que quelques ingrédients ou certaines des techniques de préparation. L’analogie atteint vite ses limites : la recette de cuisine la plus sophistiquée tiendra sur quelques pages alors qu’un code source peut atteindre plusieurs millions de lignes.

[1] Dans les deux cas, le code source est publié. La différence entre Logiciel Libre et Open Source est ailleurs : notamment dans la possibilité de réutiliser le code source publié pour produire un autre logiciel, et dans le statut de ce nouveau logiciel, devant obligatoirement être aussi un Logiciel Libre ou non. Pour compliquer les choses, il existe une multitude de licences définissant ces règles.

©© ordinateurs-de-vote.org - dernière modification : vendredi 1er juillet 2005.
Répondre à cet article - Les commentaires seront publiés après validation (assez lente, désolé).

Forum