flow10000, je vais tenter de préciser cela du mieux que je le peux !
Première chose qui commence à faire pencher la balance, du moins de mon point de vue, se sont bien sûr les performances de Java qui se rapproche de plusen plus de celle des langages compilé en natives comme le montre ce diagramme de comparaison assez light mais qui donne la forme :

source:
http://blog.cfelde.com/2010/06/c-vs-java-performance/
Je penses que cet argument n'est pas des moindres...
D'autres arguments fond également pencher la balance, mais ce qui est également très pratique c'est de pouvoir faire travailler ces deux langages main dans la main grâce aux interfaces native (JNI) ... Ainsi des libs comme LWJGL voit le jour avec des performances époustouflantes qui permettent de développer un jeux 3D performant et pas si gourmand que ça en ressources ! Bref un nombre exceptionnel de librairie à l'origine présent en C et C++ se sont retrouvé interfacés pour Java, ce qui signifie que java possède aussi bien ces libs que celle du C/C++ si elles ont été implémenté !
Un autre point important ! Plus besoin de prendre soin de notre petite mémoire, notre ami ramasse-miette s'en charge pour nous ce qui est fantastique je trouve

.
Un petit dernier pour la route, que j'ai bien failli oublier ! Lors de l'exécution, un programme Java va regarder les caractéristiques de la machine et ainsi optimiser son fonctionnement par rapport au matériel disponible sur la machine, ce qui n'est pas le cas d'un exécutable provenant de code C++.
J'ai bien défendu le Java mais ce n'est pas pour ça que je dénigre le C++, loin de la ! D'ailleurs je code majoritairement en C++, étant sous Linux et faisant pas mal de programmation système...
J'espère t'avoir répondu de façon clair et ne pas m'être trompé dans certains de mes dires !

Partager