La différence entre Java et C++


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.


2. Java


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.
Le fait que Java repose sur l'interpréteur (machine virtuelle) a des incidences sur les performances des programmes Java. En effet, ces programmes s'exécutent plus lentement que les programmes écrits dans les langages compilés dépendants d'une plate-forme donnée telle le C++.

Aucun commentaire:

Enregistrer un commentaire

A PROPOS

Débutants en Java ! Retrouvez ici la liste de tous les tutoriels, pour apprendre à programmer en Java étape par étape.

Contact us

Nom

E-mail *

Message *