Au niveau de la compilation et portabilité
1. C++
La compilation d'un programme écrit en langages C++ traduit le programme source en langage machine, c'est-à-dire, en instructions spécifiques au microprocesseur de l'ordinateur utilisé. Le résultat de la compilation est placé dans un fichier binaire (ou fichier exécutable) directement exécutable par le microprocesseur utilisé.
Les fichiers binaires obtenus par la compilation des fichiers sources ne sont pas portables, ce qui signifie que ces fichiers ne peuvent être exécutés que sur le système (plate-forme et système d'exploitation) pour lequel ils ont été compilés.
Pour utiliser le même programme sur une autre plate-forme, il faut le recompiler pour produire le langage machine spécifique à ce système. Le plus souvent, il faut modifier le code source avant de le compiler sur la nouvelle machine, compte tenu des différences que présentent les différents ordinateurs au niveau de leur micro-processeur.
Si le langage Java est indépendant de toute plate forme (langage multi plate-forme), c'est parcequ'il repose sur une machine virtuelle Java ( JVM : Java Virtual Machine), il s'agit d'un programme appelé aussi interpréteur Java. Cette machine virtuelle prend les programmes Java compilés en bytecode et convertit les instructions du bytecode en instructions compréhensibles par un système d'exploitation.
Le même fichier compilé (ou bytecode) peut fonctionner sur n'importe quel système (plate-forme et système d'exploitation) possédant une machine virtuelle Java qui lui est compatible.
- Les programmes Java ne peuvent fonctionner que sur un système sur lequel une machine virtuelle Java adéquate a été installée.
- Les navigateurs Web permettent d'utiliser des applets possèdent aussi une machine virtuelle Java.
Aucun commentaire:
Enregistrer un commentaire