Java 1.5 soll .NET-Entwickler ködern

26.06.2003
Von 
Wolfgang Sommergut ist Betreiber der Online-Publikation WindowsPro.

Die vielfältigen Einsatzmöglichkeiten derartiger Attribute ließ aber bereits warnende Stimmen laut werden. Sie befürchten den Missbrauch dieses Mechanismus und dadurch eine schlechtere Lesbarkeit von Java-Code. Insgesamt stärkt das neue Metadatenkonzept aber den deklarativen Aspekt innerhalb der stark imperativen Sprache Java.

Der Mehrsprachigkeit von .NET, die als ein weiterer Vorteil gegenüber Java gilt, versucht Sun im Rahmen des JSR 223 (Java Specification Request) zu begegnen. Ziel der Initiative ist es, gängige Scriptsprachen enger mit Java zu integrieren. Dabei geht es nicht wie bei .NET darum, Compiler für möglichst viele Sprachen anzubieten, die Java-Bytecode erzeugen können. Derartige Software gibt es schon und stammt wie "Jython" zumeist aus der Open-Source-Welt.

Ähnliches gilt für eine Reihe von Sprachinterpretern, die in Java geschrieben wurden. Dazu zählen etwa "JBasic" oder die Javascript-Implementierung "Rhino". Dieser Ansatz hat den Vorteil, dass die Sprache nicht an das Objektmodell von Java angepasst werden muss. Dies ist ein häufiger Kritikpunkt an .NET, weil dort einige Sprachen teils erheblich von der ursprünglichen Fassung abweichen. Eine Übersicht über Sprachen für die Java Virtual Machine (JVM) findet sich zum Beispiel im Web-Angebot des Lehrstuhls für Informatik an der Freien Universität Berlin.

Bei dem neuen Vorstoß möchte Sun indes Standards definieren, wie etablierte Scriptsprachen von außen auf Java-Anwendungen zugreifen können. Die Spezifikation wird dafür voraussichtlich ein API auf Basis des Java Native Interface (JNI) festlegen und beschreiben, wie Java-Anwendungen zusammen mit Scriptcode in einem Web-Archiv (WAR) verpackt und auf den Server ausgebracht werden können.

Auf der JavaOne gab Sun den Abschluss einer Kooperation mit Zend Technologies bekannt. Die israelische Firma zeichnet für den freien PHP-Interpreter verantwortlich. Entsprechend soll die Anbindung dieser Sprache als Referenzimplementierung dienen. Die Unterstützung für andere populäre Scripttechnologien wie Perl oder Python ist geplant.

Im Vordergrund steht auch hier die Absicht, den Zugang zur Java-Plattform zu vereinfachen. Die Scriptsprachen gelten dabei nicht wie unter .NET als mehr oder weniger gleichberechtigte Alternativen, sondern teilen sich die Arbeit mit Java. Demnach sollte Geschäftslogik bevorzugt in der Sun-Sprache realisiert werden, das simplere PHP würde sich für die Entwicklung von Web-Frontends empfehlen. Auf diese Weise könnten mehr Scriptprogrammierer in Kontakt mit Java kommen und sich - so wohl die Hoffnung von Sun - stärker auf diese Plattform einlassen. Java bietet mit Java Server Pages (JSP) zwar selbst eine Technologie an, die auf die Entwicklung von Web-Oberflächen spezialisiert ist. Diese gilt aber im Vergleich zu PHP als schwierig und soll in der bevorstehenden Spezifikation 2.0 diesbezüglich verbessert werden.