#Modifier Wikipédia (fr) copyright Flux Atom de Wikipédia Code source Un article de Wikipédia, l'encyclopédie libre. Aller à : Navigation, rechercher Page d'aide sur les redirections Pour le roman de William Gibson, voir Code source (roman). Page d'aide sur les redirections Pour le code de source en théorie de l'information, voir Codage de source. Le code source (ou les sources voire le source) est un ensemble d'instructions écrites dans un langage de programmation informatique de haut niveau, compréhensible par un être humain entraîné, permettant d'obtenir un programme pour un ordinateur. Les systèmes d'exploitation ne peuvent pas directement exploiter le code source ; ils ne peuvent que lancer des exécutables. Le code source doit donc être : * Transformé en code compréhensible par la machine par l'opération de compilation ; * Transformé en code compréhensible par une machine virtuelle, donc compilé aussi * Ou être exécuté tel quel par un interpréteur. Le code source peut être public ou privé (voir logiciel libre et logiciel propriétaire). Toutefois, il est techniquement possible, bien que ce soit plus compliqué, de savoir ce que fait un logiciel sans avoir le code source. 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. Sommaire * 1 Analogie de la recette de cuisine * 2 Problématiques liées à la langue * 3 Autres problématiques * 4 Voir aussi * 5 Articles connexes [modifier] Analogie de la recette de cuisine L'analogie du code source et de la recette de cuisine est souvent employée dans une volonté de vulgarisation. La recette est une liste organisée d'ingrédients en quantités et fonctions définies, dont le but est d'obtenir un résultat visé par le cuisinier, selon une technique et un enchaînement d'opérations déterminés. Ainsi le code source peut être apparenté à une recette de cuisine. Elle consiste à dire que si quelqu'un mangeait un plat, il est fort probable qu'il pourrait deviner les éléments principaux de sa composition et imaginer dans les grandes lignes comment le faire. Néanmoins, pour un plat très raffiné et subtil (comme pourrait l'être un programme), il ne pourrait pas savoir comment le chef aurait procédé. Il faudrait la recette détaillée (pour un programme la recette peut compter plusieurs millions de lignes de code) pour pouvoir reproduire le plat, il serait sinon obligé d'acheter les plats préparés. [modifier] Problématiques liées à la langue Le code peut se faire suivant des normes très précises^[Lesquelles ?] qui sont d'autant plus importantes que le langage de programmation ou les outils utilisés permettent des dérives. Le code s'écrit en utilisant d'une part un langage de programmation (par exemple Java), et d'autre part une langue humaine (français, anglais, allemand) pour les commentaires. Plusieurs problématiques concernent la langue : la langue utilisée dans les spécifications et conceptions, la langue utilisée dans les commentaires, la langue utilisée lors de l'exécution dans l'interface homme-machine, la langue utilisée pour nommer les concepts (identificateurs), les langues dans les bibliothèques logicielles utilisées. Ces problématiques sont souvent liées à l'encodage du code source. En France, en 2006, les deux principales langues utilisées sont le français et l'anglais, même si d'autres langues sont utilisées de manière anecdotique. * Le français est utilisé pour des raisons légales, mais aussi parce que cette langue facilite la communication, notamment lorsque plusieurs équipes/personnes doivent travailler sur un même projet, et permet donc d'éviter les risques d'erreur^[réf. nécessaire], toutefois, l'utilisation du français souffre parfois de limitations techniques des langages (gestion des accents), ou de la présence de concepts anglophones dans les bibliothèques. * L'anglais est utilisé parce qu'il s'intègre naturellement avec les langages et bibliothèques déjà existants^[précision nécessaire]. Il est également utilisé dans nombre^[Combien ?] de projets code source libre. Quelques entreprises choisissent la langue anglaise, afin de pouvoir faire sous-traiter les développements dans des pays à bas coût, où les développeurs peuvent ne pas comprendre le français.^[réf. nécessaire] Il est également utilisé pour des raisons historiques, parce que d'anciens langages ne permettent pas de gérer les accents, et donc les langues autres que l'anglais. * Un projet comme OpenOffice.org contient certains commentaires en allemand, ce qui est logique puisqu'étant un projet libre et collaboratif, tout le monde peut y apporter quelque chose et c'est là un beau mélange de cultures et de langues dans la diversité des programmeurs^[non neutre]. [modifier] Autres problématiques On peut classer les normes de rédaction du code en plusieurs sous-catégories : * Règles de nommage : elles définissent comment donner un nom explicite et facile à retenir pour les éléments du langage utilisé, par la spécification d'espaces de nommage ou de conventions de nommage. * Présentation et formatage des sources : comment produire un code source formaté de manière lisible. * Documentation des sources : comment documenter les sources (par exemple par des commentaires ou des outils d'extraction de documentation logicielle) * Normes syntaxiques : comment éviter les structures syntaxiques complexes qui réduisent la facilité de compréhension du code, et accroissent les risques de dysfonctionnement. [modifier] Voir aussi Sur les autres projets Wikimédia : * « Source code », sur Wikimedia Commons (ressources multimédia) * « Code source », sur le Wiktionnaire (dictionnaire universel) [modifier] Articles connexes * Langage machine * Logiciel propriétaire * Logiciel libre * Open source * Shared source * Compilateur v · d · m Programme informatique Compilation Analyse lexicale • Analyse syntaxique • Assemblage • Code objet • Code source • Compilateur • Décompilateur • Édition de liens (linker) • Identificateur • Moteur de production • Pré-compilateur • Préprocesseur Exécution Configuration • Interprète • Machine virtuelle • Offset • Portabilité • Processus • Thread • Segmentation Bug Débogueur • Dépassement d'entier (integer overflow) • Dépassement de pile (stack overflow) • Dépassement de tampon (buffer overflow) • Dépassement de tas (heap overflow) • Effet de bord • Erreur de segmentation (segmentation fault) • Exception • Fuite de mémoire • Plantage (crash) • Test Catégorie:Compilateur • Catégorie:Bug * Portail de la programmation informatique Portail de la programmation informatique Ce document provient de « http://fr.wikipedia.org/wiki/Code_source ». Catégorie : Programmation informatique Catégories cachées : Article à référence nécessaire | Portail:Informatique/Articles liés | Portail:Programmation informatique/Articles liés Outils personnels * Créer un compte ou se connecter Espaces de noms * Article * Discussion Variantes Affichages * Lire * Modifier * Afficher l’historique Actions Rechercher ____________________ (Submit) Rechercher Navigation * Accueil * Portails thématiques * Index alphabétique * Un article au hasard * Contacter Wikipédia Contribuer * Aide * Communauté * Modifications récentes * Accueil des nouveaux arrivants * Faire un don Imprimer / exporter * Créer un livre * Télécharger comme PDF * Version imprimable Boîte à outils * Pages liées * Suivi des pages liées * Importer un fichier * Pages spéciales * Adresse de cette version * Citer cette page Autres langues * Afrikaans * العربية * Asturianu * Беларуская * Беларуская (тарашкевіца) * Български * Bosanski * Català * Česky * Dansk * Deutsch * Ελληνικά * English * Esperanto * Español * Eesti * Euskara * فارسی * Suomi * Galego * עברית * Hrvatski * Magyar * Հայերեն * Bahasa Indonesia * Italiano * 日本語 * 한국어 * Lietuvių * Latviešu * Bahasa Melayu * Nederlands * ‪Norsk (nynorsk)‬ * ‪Norsk (bokmål)‬ * Polski * Português * Runa Simi * Română * Русский * Srpskohrvatski / Српскохрватски * Simple English * Slovenčina * Slovenščina * Српски / Srpski * Svenska * ไทย * Türkçe * Українська * Tiếng Việt * 中文 * Dernière modification de cette page le 1 janvier 2011 à 22:10. * Droit d'auteur : les textes sont disponibles sous licence Creative Commons paternité partage à l’identique ; d’autres conditions peuvent s’appliquer. Voyez les conditions d’utilisation pour plus de détails, ainsi que les crédits graphiques. En cas de réutilisation des textes de cette page, voyez comment citer les auteurs et mentionner la licence. Wikipedia® est une marque déposée de la Wikimedia Foundation, Inc., organisation de bienfaisance régie par le paragraphe 501(c)(3) du code fiscal des États-Unis. * Politique de confidentialité * À propos de Wikipédia * Avertissements * Powered by MediaWiki * Wikimedia Foundation