Nous écrivons généralement un programme informatique en utilisant un langage de haut niveau. Un langage de haut niveau est un langage qui est compréhensible par nous, les humains. C’est ce qu’on appelle le code source.
Cependant, un ordinateur ne comprend pas le langage de haut niveau. Il ne comprend que le programme écrit en 0 et 1 en binaire, appelé le code machine.
Pour convertir le code source en code machine, nous utilisons soit un compilateur, soit un interprète.
Les compilateurs et les interprètes sont tous deux utilisés pour convertir un programme écrit dans un langage de haut niveau en code machine compris par les ordinateurs. Cependant, il existe des différences entre le fonctionnement d’un interprète et d’un compilateur.
Interprète Vs Compilateur
Interprète | Compilateur |
---|---|
Transcrit le programme une déclaration à la fois. | Transcrit l’ensemble du programme et le traduit dans son ensemble en code machine. |
Les interprètes prennent généralement moins de temps pour analyser le code source. Cependant, le temps d’exécution global est comparativement plus lent que celui des compilateurs. | Les compilateurs prennent généralement une grande quantité de temps pour analyser le code source. Cependant, le temps d’exécution global est comparativement plus rapide que les interprètes. |
Aucun code objet intermédiaire n’est généré, donc sont efficaces en mémoire. | Génère un code objet intermédiaire qui nécessite en outre une liaison, donc nécessite plus de mémoire. |
Les langages de programmation comme JavaScript, Python, Ruby utilisent des interprètes. | Les langages de programmation comme C, C++, Java utilisent des compilateurs. |