Les langages de programmation
Les langages de programmation
Définition
Un langage de programmation est une convention permettant de formuler un algorithme et ainsi produire des programmes informatiques qui les effectuent.
Les langages de programmation servent de moyens de communication entre le programmeur (langage de programmation) et l’ordinateur (langage machine) via un interprète : le compilateur.
Chaque langage supporte une ou plusieurs approches de la programmation, aussi appelées paradigmes.
Il existe plusieurs paradigmes qui vont être explicités.
1) Impératif
Cela consiste à procéder à une exécution du programme étape par étape.
Exemples : C, Pascal, Fortran, COBOL, Python
2) Déclaratif fonctionnel
L’objet est l’évaluation de formules afin d’effectuer d’autres calculs. Le résultat sert pour les calculs qui ont besoin de son résultat.
Cet enchainement de calculs se base sur la technique de la récursivité et sur la théorie du $lambda$-calcul.
Exemples : Lisp,Ruby, Scala, OCaml
3) Déclaratif logique
Il vise à répondre à une question par des recherches dans un ensembles en utilisant des axiomes, des requêtes et des règles de déduction.
Le programmeur fixe les règles, le système pilote le processus en les respectant.
Exemples : PROLOG et bases de données
4) Orienté objet
Ce paradigme est apparu dans les années 80. La taille des programmes augmentant du fait de l’augmentation de puissance des ordinateurs, il est apparu nécessaire d’effectuer un découpage de ces programmes en plusieurs modules isolés.
Un objet contient les variables et fonctions en rapport avec un sujet. Ces variables et fonctions peuvent être privées ou non.
Si elles sont privées, seul un objet précis peut travailler sur ces variable et les modifier.
Sinon, cet objet peut être mis en relation avec un autre objet et contient alors des variables privées, qui lui sont propres, mais aussi les variables dont il a hérité à travers la mise en relation.
On définit alors les ancêtres d’un objet et toutes les variables et fonctions non privées de ses ancêtres lui sont accessibles.
Exemples : C++, Java
5) Concurrent
L’objet est, à travers d’un unique programme, de gérer plusieurs tâches simultanément.
Exemple : Go, qui a pu voir le jour dès lors que les multi processeurs furent inventés
6) Visuel
Le paradigme visuel est utile pour la programmation des interfaces graphiques, et est adapté pour les objets et images bidimensionnels.
Exemple : Delphi
7) Evénementiel
Le programme n’attend rien et ne s’exécute que lorsque quelque chose s’est passé (déplacement de la sourie, clic, …).
Cette programmation consiste à décrire les actions à réaliser en réponse à des événements qui sont prévus par le programmeur.
Exemple : Interface graphique ou application Web
8) Base Web
Des données et images sont échangées entre ordinateur.
L’ordinateur sollicité peut effectuer le travail et envoyer le résultat à l’ordinateur client ou bien envoyer le code nécessaire pour que l’ordinateur client effectue lui même les calculs.
Les programmes qui répondent à ce paradigme ne traduisent pas généralement en langage machine mais interprétés en bytecode puis traités et réalisés par des machines virtuelles.
Exemples : JAVA, php, Javascript
Au final, le choix d’un paradigme correspond au choix d’une philosophie de programmation.
Un paradigme sera donc plus ou moins adapté aux taches que l’on souhaite faire réaliser à l’ordinateur.
On pourra cependant regarder que certains langages peuvent traiter deux paradigmes.