• [^] # Re: C'est portable Java ?

    Posté par . En réponse à la dépêche Sun et le logiciel libre : deux nouveaux épisodes du feuilleton de l'été. Évalué à 3.

    Bof. C'est incroyable ce que les gens restent collés versions antédiluviennes de Java alors que ça fait des années que le bytecode est compilé au vol. Les techniques mise en oeuvre dans les JVM modernes permettent des optimisations qui sont impossibles à réaliser avec une compilation statique, par exemple des suppressions de range checking, un inlining basé sur l'utilisation réelle des méthodes, etc. Le GC permet aussi des choses assez incroyables en terme d'efficacité de l'allocation et de la désallocation. Cela signifie que le passage par le bytecode et la compilation au vol permet d'avoir de meilleures performances qu'en C dans certaines applications qui tournent longtemps (du genre serveur). De plus, le volume de la JVM est très faible, contrairement à un code objet et son chargement est très souvent beaucoup plus rapide que celui du code objet correspondant. Moralité, oui, si tu lances un hello world, Java rame monstrueusement pour les raisons que tu évoques, mais on s'en fout, c'est un détail. Ce qui est important pour l'utilisation actuelle de Java (le serveur), c'est les performances sur une appli qui tourne longtemps. Et là, le
    vrai problème, c'est la consommation mémoire délirante qui est du au fait qu'en Java il n'existe pas d'objets légers.