- Langage de haut niveau
-
En informatique, un langage de haut niveau (aussi appelé langage de programmation de haut niveau) est un langage de programmation dont la grammaire permet de programmer sans tenir compte des détails inhérents au fonctionnement de l'ordinateur. Les détails techniques sont pris en compte lors de la traduction automatique du programme en langage machine par un compilateur ou un interpréteur.
Un langage de haut niveau permet de manipuler des concepts bien plus élaborés, mais empêche la gestion de certains détails.
Fortran, Cobol, LISP et PHP sont des langages de haut niveau. On considère le C comme étant un langage de bas niveau (en raison de la gestion de la mémoire, entre autres).
Sommaire
Caractéristiques
Le terme "langage de haut niveau" n'implique pas que ce type de langage soit supérieur à un langage de bas niveau. La notion de profondeur désigne la distance du langage par rapport au travail de la machine. Le langage de haut niveau a un plus haut niveau d'abstraction que les langages machines. Plutôt que de s'occuper des registres, des accès mémoires et des piles, les langages de haut niveau s'occupent de concepts plus élaborés tels que les processus légers, verrous, objets, variables, tableaux, arithmétique complexe et expressions booléennes. De plus, ils n'ont pas la possibilité de s'occuper des détails liés à la machine tels que la gestion mémoire contrairement aux langages de bas niveau. D'autres caractéristiques telles que des routines de manipulation de chaîne de caractères, les concepts des langages objets peuvent être présentes.
Coût de cette abstraction
De façon stéréotypée, les langages de haut niveau simplifient le travail du programmeur là où les langages de bas niveau permettent de produire un code plus efficace. La limite d'utilisation des langages haut niveau correspond aux situations où les ressources matérielles sont limitées. Les concepts de programmation haut niveau tels que les structures de données génériques, l'interprétation à l'exécution sont souvent lents à l'exécution et grands consommateurs mémoire. Pour cette raison, les codes qui ont besoin de s'exécuter rapidement et efficacement devraient être écrits en langage de bas niveau, même si la programmation en langage de haut niveau se ferait plus facilement.
Néanmoins, avec l'augmentation en complexité des architectures des microprocesseurs modernes et l'amélioration des compilateurs, on observe que fréquemment les langages de haut niveau produisent du code aussi efficace que ce qui peut être fait à la main par la plupart des programmeurs. De plus, une abstraction plus haute peut permettre des techniques plus puissantes produisant généralement de meilleurs résultats que leurs équivalents bas niveau.
Voir aussi
Articles connexes
- Langage machine
- Langage assembleur
- L4G ou langage de quatrième génération
Wikimedia Foundation. 2010.