Après explique-moi comment Java, un langage haut niveau, interprété (comme le PHP par exemple) peut-être plus performant qu'un langage C par exemple. Après oui Java est pratique, il est simple et ce n'est pas le pire mais il est plus lent d'exécution au cause de son interpréteur Java que certains autres grands langages. Je ne sais pas où tu à appris l'inverse, mais bon je ne répond plus à tes message, ça ne vaut pas le coup d'écouter tes contradictions sans arguments...
Cliquez pour agrandir...
Dans la plupart des cas, le Java peut être aussi, voir plus, performant que le C++ à cause l'étape appelée
just-in-time compilation ou JIT - une étape où la JVM traduit le
bytecode Java en instructions machine et peut alors faire des optimisations qu'un programme C++ ne pourrait pas faire, ne connaissant pas l'environnement d'exécution.
Un programme C++ compilé au préalable a souvent une optimisation moyenne, c'est à dire qu'il tournera plutôt bien sur la plupart des machines, mais ne sera pas le plus optimisé possible pour une configuration spécifique (processeur spécifique, jeu d'instructions, matériel spécifique, etc.).
De part l'absence de certains éléments du langage qui font partie inhérente du C++, en particulier les pointeurs, le compilateur Java peut aller plus loin dans son processus d'optimisation sans compromettre le programme.
Les allocations dans la
heap memory sont faites de façon plus performante à cause de la couche d'abstraction entre le
garbage collector et le code, ce qui lui permet de réalisation la compression (opération très coûteuse) en une seule fois.
Bien sûr, dans des cas très spécifiques et très proche du matériel, par exemple lorsque le programme contient directement du code en assembleur (bibliothèque de cryptographie, etc.), un programme C++ sera beaucoup plus rapide qu'un programme Java. Mais pour des programmes plus conventionnels, et multi-plaformes, la différence au niveau des performances est juste minime.
Si tu veux plus d'informations, je te conseille de lire :
Édition : Il faut arrêter de crier à qui veut l'entendre que Java a des "mauvaises performances de traitement". Ce ne sont peut-être pas les meilleures mais elles sont loin d'être catastrophiques.
Cliquez pour agrandir...