Passer au contenu

James Gosling (Sun): ” Interopérabilité et compatibilité sont nos principales préoccupations “

Rencontré à Grenoble lors du lancement du laboratoire de recherche européen de Sun, James Gosling, vice-président de Sun, principal architecte de Java commente les évolutions de la plate-forme Java.

Des responsables de Sun ont émis l’hypothèse que Java pourrait bientôt relever du mode open source. Qu’en est-il exactement ? Je ne suis plus tout à fait sûr de savoir ce qu’open source veut dire. En un sens, Java était dans ce mode dès le départ : les sources ont toujours été disponibles pour qui voulait jouer avec. Nous avons un type de licence, qui, pour l’essentiel, décrit ce qui nous tient à c?”ur, c’est-à-dire l’interopérabilité et la compatibilité. Nous devons garantir avant tout qu’un programme Java, quel qu’il soit, tournera à coup sûr sur une machine virtuelle quelconque. A cette fin, nous assurons des vérifications très complètes. Et cela nous coûte fort cher. Si l’on se réfère à ce qui se passe dans le monde Linux, tout ce que l’on peut dire, c’est qu’il y a tests et tests. Nous disposons de plusieurs centaines de personnes consacrées à cette activité.Existe-t-il des problèmes de montée en charge des applications Java sur le serveur ? Pas à ma connaissance. On compte plusieurs applications Java de grande ampleur, avec des milliers de ” threads “. Et de nom- breux problèmes relèvent du système d’exploitation. Nous en avons rencontré un : de très grosses applications développées sous Unix, et tournant parfaitement, ne pouvaient monter en charge de la même manière lorsqu’elles étaient exécutées sous NT, par exemple.A propos de Microsoft, que pensez-vous de son architecture .Net, et, plus précisément, de C# ? Pour C#, on pourrait répondre que l’imitation est la forme la plus achevée de la flatterie. Plus généralement, avec .Net, Microsoft a choisi une approche fourre-tout. Sa position sur la portabilité est plutôt étrange. Tout semble basé sur le modèle objet COM. Pour autant qu’on puisse le dire, C# sera portable sur toutes les plates-formes Windows. Même si COM semble s’estomper un peu – au profit de XML, par exemple -, il est toujours là.Beaucoup de services Java sont déjà définis dans le cadre des spécifications Corba. Cela ne fait-il pas double emploi ? Les spécifications Java ne définissent que des interfaces. Ainsi, si vous voulez écrire un programme Java qui converse avec un gestionnaire de transactions Corba, vous utiliserez l’API transactions de Java. Mais cette même API vous permettra également d’accéder à un moniteur TP comme CICS. Les services Corba ne sont que l’une des manières de faire les choses. Par exemple, Java vous permet d’écrire dans un système de fichiers. Mais il n’en préconise pas un en particulier. Cela dépendra du système utilisé. Ce n’est qu’une question d’interface vers ce système particulier. Le succès de Java n’a rien changé à notre intérêt pour Corba. Et ce bien qu’il y ait eu des frictions au début : les spécialistes de Corba avaient le sentiment que nous réinventions la roue, avec RMI par exemple. Corba cherche à résoudre de nombreux problèmes. Mais, le principal, c’est de le faire indépendamment du langage utilisé. C’est ce qui requiert le plus d’énergie. Les gens qui ont produit RMI ont adopté une approche opposée : que se passe-t-il si l’on oublie cette neutralité des lan- gages ? C’est un compromis classique en ingénierie.Les EJB sont un niveau d’abstraction supplémentaire au-dessus du langage. Comment gérer cette complexité ? Le principal problème, c’est effectivement de gérer la complexité. Mais la notion de Bean sert justement à la maîtriser. Prenons, par exemple, les spécifications des Beans : elles sont assez complexes, avec les notions de conteneur, de gestion de la persistance, des transactions, etc. Mais on peut regarder le problème sous un autre angle : sans ces notions, ce serait encore beaucoup plus complexe…Voyez-vous la nécessité de nouveaux outils de développement Java, plus visuels, plus orientés vers l’utilisateur ? De nombreux outils existent pour développer en Java. Certains sont très répandus, tels ceux de Symantec ou d’Inprise/Borland. Mais le problème pour les éditeurs d’outils ces derniers temps, c’est de trouver un modèle économique qui marche. Le prix des outils de développement tend vers zéro. C’est un vrai problème, essentiellement dû à la politique de Microsoft. Personne ne peut se permettre de faire payer plus cher que lui, c’est-à-dire presque rien.Pourquoi avoir abandonné la fabrication de processeurs Java ? Il faut bien comprendre que l’objectif de l’approche par machine virtuelle est de pouvoir s’adapter à n’importe quelle architecture de processeur. Alors, dans ce cas, à quoi bon produire un processeur spécialisé ? En règle générale, sur le marché, les processeurs spécialisés finissent toujours par être écartés par les processeurs généralistes.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Propos recueillis par Philippe Davy