Compilateur
Un compilateur est un programme qui traite les instructions écrites dans un langage de programmation donné pour les traduire en langage machine, ou « code », utilisé par le processeur d'un ordinateur.
Le processus est généralement le suivant : un développeur écrit ligne par ligne des instructions en langage Pascal ou C par exemple, au moyen d’un EDI. Le fichier ainsi créé contient les instructions source. Le programmeur lance ensuite le compilateur de langage approprié en indiquant le nom du fichier qui contient les instructions source.
Le compilateur commence par effectuer l'analyse syntaxique de toutes les instructions dans le langage de programmation, les unes après les autres, puis, en une ou plusieurs étapes ou « passes », il génère le code de sortie en s'assurant que les instructions qui font référence à d'autres instructions sont correctement reprises dans le code final.
Le résultat de la compilation est généralement appelé code objet ou module objet (le terme « objet » n'ayant ici aucun rapport avec la programmation orientée objet). Le code objet est du code machine qui peut être « exécuté », c'est-à-dire traité par le processeur une instruction à la fois.
Avec le langage Java, il est possible de compiler une sortie (dite code à octets) exécutable sur toutes les plateformes informatiques dotées d'un interpréteur, appelé machine virtuelle Java, qui convertit le code à octets en instructions compréhensibles par le processeur. Cette machine virtuelle permet éventuellement de recompiler le code à octets sur la plateforme d'exécution à l'aide d'un compilateur à la volée (baptisé JIT pour Just-In-Time).