Hello world
Modèle:Titre en italique Modèle:Voir homonymes
« Modèle:Lang » (traduit littéralement en français par Modèle:Citation) sont les mots traditionnellement écrits par un programme informatique simple dont le but est de faire la démonstration rapide de son exécution sans erreur.
Selon leur langage de programmation, certains des programmes imprimant ces mots sont étonnamment complexes, particulièrement dans un contexte d’interface graphique. D’autres sont très simples, particulièrement ceux qui utilisent un interpréteur de ligne de commande pour afficher le résultat. Dans plusieurs systèmes embarqués, le texte peut être envoyé sur une ou deux lignes d’un afficheur LCD (ou dans d’autres systèmes, une simple DEL peut se substituer à un Modèle:Lang).
Histoire
Alors que les petits programmes de test existaient depuis le début de la programmation, la tradition d’utiliser Modèle:Lang comme message de test a été initiée par le livre Modèle:Lang de Brian Kernighan et Dennis Ritchie, publié en 1978.
Le premier exemple de ce livre affiche Modèle:Lang (sans majuscule ni point final, mais avec une virgule et un retour à la ligne terminal). Le premier Modèle:Lang dont Kernighan et Ritchie se souviennent provient d’un manuel d’apprentissage du langage B écrit par Kernighan<ref>[1].</ref>. Le PDP-11 16 bits Modèle:Incise contribua à la diffusion de l’expression, les usagers se procurant l'ouvrage The C Programming Language pour apprendre à utiliser la machine<ref>Modèle:Article</ref>. Dans une interview à l'édition indienne du magazine Forbes, Brian Kernighan explique que cette phrase provient d'un dessin animé qu'il avait vu, où un poussin sortait de son œuf en disant Modèle:Citation.
Au Modèle:S mini- siècleModèle:Vérification siècle, les programmes affichent plus souvent Modèle:Lang comme une phrase, avec majuscule, virgule et point d’exclamation final.
Utilité
De manière plus large, c'est le programme le plus simple qu'on essaie de faire fonctionner lorsqu'on apprend un nouveau langage de programmation (par exemple à but pédagogique), mais aussi lorsqu'on met au point ou qu'on met en œuvre des composants logiciels dans une situation donnée.
Il peut par exemple permettre au développeur spécialiste en langages de programmation de tester le compilateur ou l'interpréteur du langage dans lequel il est écrit, mais aussi à tout développeur de tester l'intégration de différentes technologies logicielles dans un contexte particulier.
Par exemple l'exécution réussie du programme Modèle:Lang en JavaScript à l'aide de V8Js au sein d'un programme PHP permettant l'exécution de code JavaScript Server-side<ref>Modèle:Lien web.</ref> donnera au développeur la preuve qu'il a mis en œuvre avec succès l'intégration de toute cette pile de technologies dans son contexte spécifique (par exemple versions spécifiques de Serveur web, de PHP, de navigateur, ou de tout autre composant logiciel impliqué dans la transaction complète).
Programmes Hello world!
GNU Hello
La mise en œuvre GNU est sensiblement plus complexe que l’algorithme de base décrit par Kernighan et Ritchie. Elle fait ici figure d’exemple canonique pour l’empaquetage d’un programme GNU<ref name="Eyrolles">Modèle:Ouvrage</ref>, et va jusqu’à servir de modèle aux normes de codage GNU ainsi qu’aux pratiques en vigueur au sein du projet<ref>Modèle:Lien web. Modèle:Début citationIl s’agit du fameux programme qui affiche Modèle:Lang : cinq lignes de C, empaquetées comme s’il s’agissait d’une distribution GNU. Par conséquent, il contient toute l’information relative à Texinfo et à Configure. Et tout le reste des rouages d’ingénierie logicielle que le projet GNU a inventés pour permettre le portage aisé vers les autres environnements. C’est un travail extrêmement important, et ça n’affecte pas seulement les logiciels de Stallman, mais aussi tous les autres logiciels du projet GNU.Modèle:Fin citation</ref>.
Ce programme écrit en C est maintenu depuis 1992. La version 2.12.1 a été publiée le Modèle:Date-<ref>Modèle:Lien web.</ref>.