Les langages informatiques sont des langages formels : leur grammaire (la syntaxe) et leur règle de sens (la sémantique) sont fixées sans ambiguïté, pour qu’une machine puisse les traiter. Ils servent à décrire des instructions, des données ou la structure d’une page, et tous ne programment pas. On les classe selon quatre critères : le niveau, le mode d’exécution, le rôle et le style de programmation.
Ce qu’on appelle un langage informatique
Un langage informatique repose sur une grammaire formelle : des symboles, des règles pour les assembler, et des règles qui donnent un sens à chaque phrase correcte. Une machine n’interprète pas une intention, elle applique ces règles à la lettre. Une virgule oubliée suffit à rendre un texte invalide.
A découvrir également : Débutant en réseau ? souder la fibre optique pas à pas sans se tromper
Le langage n’est pas le programme. Le langage définit ce qu’on a le droit d’écrire, le programme est un texte précis écrit dans ce langage pour obtenir un résultat. Personne ne peut dire combien de langages existent : n’importe qui peut en créer un, et la plupart restent confidentiels. Un même langage peut aussi se décliner en versions successives, qui ajoutent des possibilités sans changer le principe.
Bas niveau et haut niveau : la distance avec la machine
Le langage machine est une suite de bits que le processeur exécute directement. L’assembleur le remplace par des mnémoniques lisibles, et chaque instruction assembleur correspond en général à une instruction machine. Il reste propre à chaque architecture de processeur : un programme écrit pour l’une ne tourne pas sur l’autre.
A découvrir également : One Drive photos : sauvegarder, retrouver et trier vos clichés

Les langages de haut niveau, comme C ou Python, masquent ces détails matériels. Le gain porte sur la lisibilité et la portabilité d’un programme. Le prix est un contrôle moins fin de la mémoire et du processeur. C’est pourquoi le noyau d’un système, dont on retrouve le rôle dans les fonctions d’un système d’exploitation, s’écrit dans un langage proche de la machine.
Compilé ou interprété : comment le code devient exécutable
Un compilateur traduit tout le programme en code exécutable avant le lancement. C’est le cas de C. Les erreurs de syntaxe sont signalées avant l’exécution et le programme démarre vite, mais il faut le recompiler pour chaque type de machine.
Un interpréteur fait cette traduction à la volée, instruction après instruction. Le code se modifie et se teste aussitôt, au prix d’une exécution souvent plus lente. Les scripts d’un programme d’automatisation sont des exemples courants de code interprété.
Entre les deux, Java et Python passent par un bytecode, une forme intermédiaire que fait tourner une machine virtuelle. Le même bytecode s’exécute alors sur toute machine qui dispose de cette machine virtuelle.
Programmation, balisage et requête : tous les langages ne programment pas
Un langage de programmation exprime un algorithme, avec des boucles, des conditions et des calculs. Un langage de balisage ne calcule rien : HTML, conçu pour écrire les pages web, décrit la structure d’un document. CSS en règle l’apparence. Pour voir comment ces briques se combinent, lisez l’article sur les langages du développement web.
Un langage de requête interroge des données. SQL exploite les bases de données relationnelles et fait l’objet de la norme ISO/CEI 9075. Il dialogue avec le code qui fabrique les pages, comme l’explique la base de données d’un site web.
Les paradigmes : impératif, objet, fonctionnel, déclaratif
Le paradigme est le style dans lequel on raisonne. Le style impératif enchaîne des instructions pas à pas, comme C. Le style objet regroupe données et comportements dans des objets, comme en Java.
Le style fonctionnel évalue des fonctions mathématiques, et le style déclaratif décrit le résultat voulu plutôt que les étapes : une requête SQL en est un exemple. La plupart des langages actuels, Python en tête, mélangent plusieurs de ces styles. Un développeur passe donc d’un style à l’autre sans changer de langage, selon le problème à résoudre.
Le style logique, plus rare, exprime des règles et des faits : le programme déduit alors la réponse au lieu de suivre une recette. Il reste un cas particulier du style déclaratif.
Quelle famille de langages pour quel usage
Le choix suit l’usage visé. Pour les systèmes et l’embarqué, on s’appuie sur des langages proches de la machine. Pour le web, on combine balisage, style et un langage de programmation. Pour les données et l’intelligence artificielle, on retrouve surtout des langages interprétés. Les applications mobiles et les scripts d’administration ont leurs propres langages courants, souvent choisis parce que la plateforme les impose ou les facilite.

Pour débuter, trois critères comptent : le projet visé, la quantité de cours et d’exemples disponibles, et une syntaxe lisible. Certains projets simples se passent même de code grâce aux outils de création sans code.
Un même projet réunit souvent plusieurs langages, chacun dans son rôle. Apprendre à les classer par niveau, par exécution, par rôle et par style permet de situer vite n’importe quel nouveau venu.

