Les langages de programmation les plus populaires et pour chacun, pourquoi on l'utilise, un lien sur une fiche détaillée et un autre sur un exemple de code calculant la suite de Fibonacci. Il vous aidera à utiliser le langage qui convient le mieux à un projet.

Liste complète Description Pourquoi l'utiliser ?
BASIC Ce langage très ancien (1964) a été amélioré par Microsoft, avec un environnement de développement complet. D'autres ports existent.
Détails
- Code
Scripts sur les logiciels de Microsoft (Word, etc...), pages web dynamiques (ASP) quand le serveur est Windows, ou applications avec Visual Basic.
C C offre une grande liberté, mais aussi un bon exercice de déboguage à cause des pointeurs et la gestion de la mémoire.
Détails
- Code
Parce que l'on accepte de souffrir une programmation laborieuse afin d'avoir des programmes rapides. Surtout pour la programmation système.
C++ C'est C plus les objets, les templates, une bibliothèque étendue, la surcharge des opérateurs.
Détails
- Code
Pour la programmation système comme C mais permet de plus grand projets et la création d'applications et de jeux.
C# Concurrent de Java, C Sharp tourne sur .NET ou Portable NET, Mono.
Détails
- Code
Plus moderne que Java pour les application de burreau ou du Web. Peut partager les ressources de .NET avec d'autres langages, sous un runtime commun.
Go Langage système conçu pour être compilé plus rapidemment. Il remplace C++ et Python grâce à son garbage collector intégré.
Détails - Code
Langage volontairement simplifié pour réaliser des scripts et services Web concurrents, compilés rapidement, facile à maintenir, supportant un large traffic.
Java Conçu pour être portable et remplacer C++.
Détails - Code
Pour des applications multi-plateformes, les services Web et applications mobile sous Android.
Julia Langage généraliste avec des capacités scientifiques, à la syntaxe claire, compatible avec LLVM.
Details - Code
Convient aux calculs scientifiques et à la programmation sur le cloud.
Scala Langage procédural, fonctionnel et orienté-objet.
Détails - Code
Offre une syntaxe plus compacte que Java sur la machine virtuelle, améliore la productivité.
Swift Inspiré par les langages de script à syntaxe simplifiée, il remplace Objective C.
Détails - Code
Applications mobiles et locale pour iPhone et MacOS.
JavaScript,
ECMAScript
A été inventé pour faire des pages web dynamiques coté client. ECMAScript est la version standard.
Détails
- Code
Pour l'interactivité dans les pages web, les interfaces, et en complément à HTML 5 pour les applications immersives. Réaliser une application coté serveur avec Node.js.
TypeScript Version modernisée de JavaScript dotée de classes, interfaces, modules .
Détails
- Code
Pour réaliser des applications JavaScript de grande taille, et faciliter la réusabilité du code des applications web.
Pascal Vieux langage (1970), amélioré avec les objets, qui impose une programmation structurée stricte.
Détails
- Code
Pour l'apprentissage ou créer des applications client/serveur avec Delphi.
PHP Conçu pour être inséré dans le HTML et construire des pages web dynamiques coté serveur, notamment à partir de bases de données.
Détails
- Code
Scripting coté serveur, et produire des pages HTML à partir de données. La version 5 vise les services Web.
Python Un langage interprété moderne avec des fonctions intégrées puissantes et la simplification du code unique par l'indentation.
La version Jython compile en bytecode Java.
Détails
- Code
D'apprentissage facile, pour programmer rapidemment et aisément, réaliser de petits services Web ou des applications scientifiques.
Scripting pour Java avec Jython.
Assembler Proche du langage machine, et le plus rapide. Vous ne devriez par avoir à l'utiliser, comme le faisaient les anciens programmeurs. Réaliser des routines graphiques, des pilotes de matériel ou programmer des machines industrielles.
Eiffel, Sather Orienté-objets, avec "programmation par contrat" et autres options de sécurité. Sather est une implémentation open-source.
Détails - Code
Réaliser des applications sûres. Utilisé par des hôpitaux.
Perl Un language interprété de scripts. Lisibilité et facilité d'utilisation ne sont pas le but.
Perl
- Code
Utilisé par les administrateurs de réseaux et pour de petits scripts CGI.
Ruby Conception avec la simplicité en vue. Il est interprété et donc à une bibliothèque propriétaire, mais extensible.
Détails
- Code
Faire des scripts plus facilement.
Utiliser Ruby on Rails pour les applications Web.
Rust Créé pour pallier aux inconvénients de C++, son insécurité principalement. Syntaxe obscure. Utilise LLVM.
Détails - Code
Programmation système avec gestion de mémoire sécurisée, ou production de code WebAssembly.
Tcl Un langage de script, facile à apprendre, disponible sur toutes les plateformes.
Détails - Code
Des scripts, éventuellement graphiques et portable. Programmation web en CGI.
Dart Langage interprété JIT fonctionnant coté serveur ou converti en JavaScript.
Détails - Code
Alternative à TypeScript pour de grandes applications, coté client ou serveur.
Objective C Alternative à C++ sur les machines d'Apple surtout.
Code
Applications natives sur iPhone ou iPad.
ASP Langage de scripts coté serveur par Microsoft, avec la syntaxe de Basic.
ASP
- Code
Produire des pages Web dynamiques à partir de données sous serveur Windows seulement.
Lua Langage utilisable comme extension ou seul, sa sémantique est aussi extensible.
Lua - Code
Réalisation de jeux, scripting pour étendre un logiciel.
Erlang Langage fonctionnel concurrent dont le fonctionnement est divisés en processus.
Erlang - Code
Traitement coté serveur pour un site en expansion avec des requêtes massives. Whatsapp est réalisé entièrement en Erlang.
Elixir Fonctions d'Erlang avec une syntaxe proche de Ruby, il offre une alternative au premier.
Elixir
Remplace Erlang avec une syntaxe plus lisible.
Cobol Langage de gestion, toujours utilisé sur de gros ordinateurs.
Code
Maintenir de vieux programmes sur les mainframes.
Fortran Un des premier langages, toujours utilisé pour des tâches mathématiques.
Fortran - Code
Disposer d'une large bibliothèque mathématique.
Lisp / Scheme Un très vieux langage d'intelligence artificielle qui traite de listes uniquement. Scheme est une version modernisée de Lisp.
Scheme - Code
Intelligence artificielle. Lisp sert souvent à écrire des scripts.
Prolog Langage de traitement logique basé sur les clauses de Horn.
Détails - Code
Traitements d'intelligence artificielle et de résolution de problèmes.
Haskell Programmation fonctionnelle. Lent et gros consommateur de mémoire.
Haskell
- Code
Essayer de programmer sous une forme plus mathématique.
Kotlin Alternative à Java avec une syntaxe moins verbeuse
Kotlin
Programmation de mobiles android.
Caml, Ocalm Langages fonctionnels, Ocalm est orienté-object.
Caml - Code
Utilisé dans les universités. Peut aider à construire un compilateur.
CoffeeScript Frontend à JavaScript
CoffeeScript - Code
Applications sur Node.js ou applications Web. Tend a être éclipsé par TypeScript.
D C modernisé avec objets et gestion mémoire.
D
Programmation système.
SQL Langage d'interrogation de bases de données.
MySQL site
Définir des requêtes à des bases de données.
R Pour les statistiques et le traitement analytique de données.
R
Conception de logiciels statistiques. Un langage plus généraliste comme Julia peut aussi convenir.
WebAssembly Langage intermédaire conçu comme un bytecode pour les pages Web.
Détails - Code
Pour accélérer JavaScript ou le remplacer par d'autres langages, sur le Web ou localement.

Implémentés sur la machine virtuelle Java (JVM):

Conçus spécialement pour fonctionner sur LLVM:

Ces langages ont une implémentation .NET:

Peuvent être compilés en JavaScript:

Peuvent être compilé en WebAssembly:

Voir aussi:

Liste des mises à jour:
9 janvier 2013: Supprimé Boo, ajouté Go.
14 mai 2013: Supprimé Modula, Oberon, Netrexx et ajouté CoffeeScript, Dart.
13 février 2014: Ajouté Julia.
27 février 2014: Supprimé Forth, a
jouté Erlang.
4 avril 2014. Ajouté TypeScript.
5 février 2014. Ajouté Scala.js aux langages compilés en JS.
22 janvier 2020. Supprimé Rebol, Smalltalk et Clojure. Ajouté Rust, Swift, WebAssembly, Kotlin, R et Elixir.