Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Compilation

La compilation est le processus qui consiste à transformer un programme informatique écrit dans un certain langage en un ensemble d'instructions dans un autre format ou langage. Un compilateur est un programme informatique qui réalise cette tâche.

En général, un compilateur transforme du code écrit dans un langage de haut niveau comme C++, Rust ou Java en code exécutable (pouvant être lancé) — appelé code binaire ou code machine. WebAssembly, par exemple, est une forme de code binaire exécutable qui peut être compilé à partir de code écrit en C++, Rust, C#, Go, Swift et plusieurs autres langages (angl.) et exécuté sur n'importe quelle page web, avec la plupart des fonctionnalités prises en charge dans les navigateurs modernes (voir le tableau de compatibilité des navigateurs).

La plupart des compilateurs effectuent soit une compilation anticipée (ahead-of-time, AOT), soit une compilation just-in-time (JIT).

Le compilateur GNU gcc est un exemple bien connu de compilateur AOT. Les compilateurs AOT sont généralement lancés depuis la ligne de commande dans un environnement shell (terminal ou console) ou depuis un IDE.

Les compilateurs JIT ne sont généralement pas lancés directement, mais sont intégrés dans les environnements d'exécution des logiciels afin d'améliorer les performances. Par exemple, tous les principaux navigateurs utilisent désormais des moteurs JavaScript qui intègrent des compilateurs JIT.

Les compilateurs peuvent aussi traduire entre langages de haut niveau — par exemple, de TypeScript vers JavaScript — auquel cas, on les appelle souvent transpileurs.

Voir aussi