Interview mit Java-Erfinder James Gosling, Sun Microsystems

"Ich bin enttäuscht von .NET"

19.04.2002
Anlässlich der Entwicklerkonferenz JavaOne äußerte sich Java-Erfinder James Gosling zu Microsofts .NET. Mit dem Vice President von Sun Microsystems sprach Carol Sliwa von der CW-Schwesterpublikation "Computerworld".

CW: Gibt es irgendetwas in der .NET-Architektur, das Sie bewundern?

Gosling: Chuzpe, Frechheit. Ehrlich gesagt, fand ich es ziemlich enttäuschend. Es gab viele Gerüchte über die Common Language Runtime und wie die neue Programmiersprache C# aussehen würde. Wir stellten uns alle möglichen schlauen Dinge vor, die die Microsoft-Leute realisieren könnten. Aber sie entschieden sich dafür, nichts von all dem umzusetzen. Ich fand das merkwürdig.

CW: Was hätte Microsoft Ihrer Meinung nach tun können?

Gosling: Sie hätten bei der Sprache kreativer und bei Dingen wie dem Speichermodell sorgfältiger sein können. Sie unterlagen bestimmten Zwängen, wie etwa der Tatsache, dass sie C und C++ unterstützen mussten. Dadurch verkrüppelten sie das Speichermodell mit löchrigen Konstruktionen, was auf Kosten der Sicherheit und Verlässlichkeit geht.

Eines meiner Steckenpferde sind wissenschaftliche Berechnungen. Sie hätten etwas tun können, um diese leichter zu machen. Oder sich um die Integration von Geschäftslogik und Sprache kümmern können. Aber die Syntax von C# ist fast die gleiche oder eigentlich exakt dieselbe wie jene von Java.

CW: Es heißt, Nachahmung ist die aufrichtigste Form der Schmeichelei. Hatten Sie dieses Gefühl, als Sie C# sahen?

Gosling: Ja. Zu einem gewissen Grad auch das Gefühl, missbraucht und betrogen worden zu sein. Teilweise fühlte ich mich aber auch erleichtert.

CW: Erleichtert?

Gosling: Dass es nicht besonders kreativ war.

CW: Microsoft vertritt den Standpunkt, dass die Interoperabilität zwischen Anwendungen über Web-Services wichtiger sei als Plattformunabhängigkeit. Was meinen Sie dazu?

Gosling: Es ist wieder einer dieser Fälle, wo ihre Aussagen zumindest einen Funken Wahrheit enthalten, so dass man einen Moment innehält. Wenn man definierte Protokolle hat, können auf beiden Seiten beliebige Programme sein. Das ist Voraussetzung für jede Art von Interoperabilität. So kann etwa eine Fortran-Anwendung mit einer solchen kommunizieren, die in Cobol geschrieben wurde, wenn für beide ein standardisiertes Protokoll existiert.

Aber eine tiefere Integration bringt zahlreiche Vorteile. So können Anwendungen Programmcode dynamisch verteilen. Oder die Kenntnisse der Programmierer lassen sich übergreifend nutzen. Wenn Sie sich die Ingenieurteams ansehen, die End-to-End-Systeme (in Java) entwickeln, dann sehen Sie, dass sie sowohl für die Infrastruktur, für Handys, für den Client als auch für eingebettete Systeme oder grundlegende Frameworks entwickeln können.

Plattformen, die eine konsistente Softwareumgebung aufweisen, erlauben Ihnen, modulare Komponenten zu verwenden, wo immer Sie wollen. Ausgefeilte Netzprotokolle wie Remote Method Invocation (RMI) bieten die Möglichkeit, Code im Netz zu verschieben oder gar Treiber dynamisch von einem System zu laden - und das unter Nutzung der vorhandenen Sicherheitsfunktionen. Das alles geht nicht, wenn wirklich verschiedene Plattformen miteinander kommunizieren. Java als virtuelle Plattform kann genau diese Vorteile des einheitlichen Konzepts über heterogene Netze hinweg bieten.

CW: Was würden Sie Leuten aus der Unternehmens-DV sagen, die über .NET versus Java 2 Enterprise Edition (J2EE) debattieren?

Gosling: Der wichtigste Unterschied zwischen J2EE und .NET besteht darin, dass J2EE ein Markt, .NET hingegen ein Produkt ist. Sie finden in der J2EE-Welt Hunderte Firmen, die Komponenten, Werkzeuge und Applikations-Server anbieten. Die Community bestimmt, was geschieht, es wird ihr nichts diktiert. Aus sozioökonomischer Sicht ist es ein anderes Wesen als .NET.

Technisch gesehen ist J2EE viel reichhaltiger. Schauen Sie sich all die APIs und Werkzeuge an. Da ist etwa nicht nur eine Methode für Networking. Wir unterstützen natürlich die ganzen XML-Geschichten. Aber da ist auch Corba und RMI sowie eine Vielzahl anderer Internet-Protokolle.

CW: Einige Anwender spielen mit dem Gedanken, .NET für das Frontend und Java für das Backend zu nutzen. Was halten Sie davon?

Gosling: Es ist sicher der Fall, dass Microsoft ein ziemlich absolutes Monopol auf dem Client hat. Das macht ihnen dort einiges leichter. Diese Anwender werden aber überrascht sein, wenn sie entdecken, wie einfach es ist, Client-Software auf dem PC in Java zu schreiben.

CW: Microsoft hat nach allgemeiner Einschätzung einen deutlichen Vorteil bei Entwicklungswerkzeugen. Bea Systems eiferte der einfachen Bedienbarkeit von Visual Basic nach, als es kürzlich seinen "Weblogic Workshop" ankündigte. Sehen Sie einen Bedarf an Tools, die einfacher zu bedienen sind?

Gosling: Ja und nein. Wirklich gute Werkzeuge sind sicher hilfreich. Es gibt in der Java-Welt eine große Zahl an interessanten Tools.

Historisch gesehen, haben wir uns aber darauf konzentriert, dass wir eine Architektur erstellen, die für sehr große Anwendungen geeignet ist. Die Mehrheit der Sun-Kunden sind Leute, die große Dinge bauen. Tools wie jene von Microsoft brillieren bei einfachen Anwendungen. Projekte, die Microsofts Ansatz folgen, lassen sich oft sehr schnell realisieren. Aber wenn Sie diese dann entsprechend ausbauen wollen, kommen Sie in Schwierigkeiten.

In der Vergangenheit konzentrierten wir uns darauf, schwierige Dinge möglich zu machen, und machten uns nicht so viele Gedanken über die einfachen Anliegen. Aber die ganze Arbeit in der Tools-Branche hat dazu geführt, dass nun auch einfachere Anwendungen einfacher zu entwickeln sind.

CW: Haben Sie Angst vor Microsoft?

Gosling: Ja, wenn ich daran denke, wie sie es geschafft haben, sich aus dem Kartellverfahren zu stehlen. Sie wurden ziemlich abscheulicher Handlungen beschuldigt, und ihre Strafe war dieser Vergleich, den zu umgehen so einfach ist. Sie wurden im Wesentlichen freigesprochen und nehmen dies als Freibrief, um wirklich barbarisch zu sein. Als vor einigen Tagen ein Mitarbeiter von Gateway darüber aussagen sollte, ob Microsofts Praktiken seit der Übereinkunft mit dem Justizministerium schlimmer geworden sind, meinte er: "Selbstverständlich." (ws)

LinkDas vollständige englischsprachige Interview findet sich unter

http://www.computerworld.com/storyba/0,4125,NAV47_STO69691,00.html und http://www.computerworld.com/itresources/rcstory/0,4167,STO69760_KEY11,00.html.