
par Claude Lecommandeur, SIC-Logiciels

Ne soyez pas à la traîne de la technologie, vous aussi vous pouvez briller dans les salons. Lisez cet article, et les mystères de HotJava vous seront révélés, faisant de vous ce brillant internaute branché que vous avez toujours rêvé d'être.
HotJava est le nouveau client WWW de Sun Microsystems (un petit fabricant d'ordinateurs californien). Il a une particularité qui le rend différent des autres clients WWW: en plus de montrer des documents HTML, il peut exécuter des programmes, qu'il télécharge à partir du réseau de la même manière que ces documents HTML.
Les avantages sont immenses, à la place de textes et d'images statiques, on va pouvoir visualiser des animations, et surtout, dialoguer avec des applications hautement interactives avec de très bonnes performances, puisque ces applications seront exécutées directement dans votre client, sur votre machine même. Je vais essayer de détailler un petit peu les mécanismes qui rendent cela possible.

retour à la table des matières

Tout d'abord, il ne contient plus C entièrement puisqu'il n'y a plus de possibilité de manipuler les pointeurs. On perd un peu en souplesse et en possibilité de bidouiller, mais on gagne beaucoup en fiabilité (entre autres, plus de core dump).
Il a un système de multi-threads intégré, c'est-à-dire qu'il peut faire plusieurs choses à la fois. Un programme Java pourra, par exemple, réagir aux sollicitations de votre souris, tout en chargeant un document à travers le réseau. On peut bien sûr faire ça en C, mais c'est beaucoup plus difficile, avec Java, ça marche tout seul.
Troisième possibilité, et non des moindres, il dispose d'un ramasse-miettes (garbage collector) intégré. Le programmeur n'a plus à se soucier de la gestion de la mémoire. Il prend ce qui lui est nécessaire, et le ramasse-miettes reprend quand ça ne sert plus, sans qu'on ait rien à lui dire.
retour à la table des matières

Il est même imaginable, que la machine virtuelle, compile réellement au vol les programmes qu'elle doit exécuter, elle atteindrait alors des niveaux de performances similaires aux véritables langages compilés.
retour à la table des matières

retour à la table des matières

Il bénéficie d'entrée de jeu des facilités de Java, multi-threading, ramasse-miettes, etc... Mais surtout, il est exécuté par la machine virtuelle Java, et peut donc exécuter lui même d'autres programmes de cet environnement. Ces programmes, que HotJava peut exécuter sont appelés des applets. Les applets sont donc des programmes Java, que HotJava va télécharger à partir d'un serveur WWW, et exécuter immédiatement. Ces applets pourront manipuler des images, dessiner des graphiques, ouvrir des fenêtres, réagir à votre souris ou votre clavier, etc. Tout ce que Java permet de programmer est faisable dans un applet. Ceci ouvre un champ de possibilités immense au monde WWW. On ne sait pas trop, jusqu'où on va pouvoir aller, seule l'imagination des utilisateurs semble devoir limiter les possibilités. Les heureux possesseurs de HotJava peuvent déjà essayer une multitude de démonstrations sur
retour à la table des matières

Les concepteurs de Java ont bien sûr pris en compte ces possibilités. L'accent a été mis fortement sur la sécurité.
retour à la table des matières

retour à la table des matières
retour à la table des matières

De plus, dans le futur, il est prévu que les applets Java puissent être signés à l'aide d'un système de chiffrement à clé publique (voir l'excellent article du Flash Informatique du mois dernier sur le chiffrement). Ceci permettrait à une autorité reconnue de vérifier l'innocuité d'un de ces applets, et de la certifier. HotJava pourrait alors vérifier cette certification d'innocuité et en tenir compte.
retour à la table des matières

va tout vous expliquer.
retour à la table des matières
article paru dans le Flash informatique, numéro 8 du 24 octobre 1995