Hurra, Java 7 ist da!
Seit Juli ist das lange ersehnte, das neue Java, endlich da. Ein großes Ereignis, das Oracle mit weltweiten Partys entsprechend in Szene zu setzen versuchte. Der Jubel hielt sich allerdings in Grenzen, und auch Mark Reinhold gab sich bei den Feierlichkeiten im Silicon Valley betont nüchtern, als er auf die Frage, was das Bemerkenswerteste an Java 7 sei, die lakonische Antwort gab: „Die Tatsache, dass wir Java 7 endlich ausliefern“.
Gewiss, Reinhold kennt das Drama rund um Java 7, das jetzt wohl seinen glücklichen Abschluss gefunden hat. Seit 2006 bereits wird der Java-Welt ein neues Update in Aussicht gestellt, seit 2006 ist allerdings auch nichts geschehen.
Dann setzte schließlich Oracles Pragmatismus ein. Man beabsichtige, im Sommer 2011 definitiv ein Release herauszubringen, hieß es zur letztjährigen JavaOne. Dafür wurde kurzerhand das Naheliegende in Java 7 gepackt und der Rest auf Java 8 vertagt, das dann eineinhalb Jahre später nachfolgen soll.
Java 7, das sollte man erwähnen, ist immerhin das erste Open Source entwickelte Java. Das bedeutet nicht nur, dass das Ergebnis quelloffen vorliegt, sondern dass sich die Entwicklung transparent vor aller Augen vollzogen hat. Damit ist es das erste Java-Release, das nicht mehr dem ewigen „Spec first“ des ersten Jahrzehnts folgt, sondern mutig den Code voranstellt („Code first“).
Was die Anzahl der Features betrifft, stellt es zwar keinen atemberaubenden Schritt nach vorne dar, liefert aber den Beweis, dass man es ernst meint mit der pragmatischen Planung und, wichtiger noch, dass man bei Oracle in der Lage ist, die Entwicklung zu stemmen, und zwar „in time“. Das größte Entwicklerteam, das je an Java gearbeitet hat, wurde von Oracle dafür abgestellt.
Und so können wir sicher sein, dass das nächste Java, nämlich die Version 8, ebenfalls pünktlich Ende 2012 kommen wird. Nach über fünf Jahren Stillstand sollten wir alle dies als eine großartige Verbesserung anerkennen!
Und doch: die Struktur des JDK erweckt den Anschein, als sei sie ein wenig in die Jahre gekommen; sie hat sich im Laufe der Zeit nur geringfügig geändert, was ein wenig verwundert, zumal wir in einer IT-Welt leben, in der sich die Bedingungen rasant wandeln. Das Softwarepaket mit Runtime, etwas Sprache hier, etwas Desktop-Funktionalität da, und mit seiner Fülle an Bibliotheken, dient noch immer als Basis für die unterschiedlichsten Systeme – von der PC-Software bis hin zur hochskalierenden Webanwendung.
Sollte das JDK nicht besser ein schlankes Gebilde sein, bei dem sich Pakete für Desktop, Sprachen, Web, Integration usw. nach Bedarf mühelos hinzuschalten lassen? Hätten wir uns im Zeichen polyglotter Programmierung und der Cloud nicht ein bisschen mehr Visionäres gewünscht? Das Aufzeigen einer Richtung, wohin sich Java in der nächsten Dekade entwickeln wird?
Wir wollen heute aber nicht meckern, sondern vielmehr den endlich eingeholten Innovationsstau ausdrücklich loben. Dass die weltweit wichtigste Programmierplattform endlich aus ihrem Dornröschenschlaf erwacht, das ist die gute Nachricht!
Was den Prozess angeht, so erinnern wir uns noch an den wilden Streit zwischen Oracle und der Apache Foundation, der inzwischen aber weitgehend verklungen ist. Die Apachen sind nicht mehr im JCP dabei und IBM ist aus Harmony (Apaches alternative Java-Implementierung) ausgestiegen, um seine Ressourcen auf die OpenJDK-Mitarbeit, gemeinsam mit Oracle, zu konzentrieren. Dann folgte Apple und kürzlich verkündete auch SAP seine aktive Mitarbeit am zentralen Java-Code. Es scheint, als obsiege wieder die Vernunft nach dem letzten Jahr der Streitereien und des Oracle-Bashings aller Orten.
Es fehlen also nur noch Red Hat, VMware (SpringSource) und Google, dann hätten wir alle Großen der Java-Szene in der Koalition. Gewiss, bei Google steht aus offensichtlichen Gründen noch in den Sternen, ob und wann es mit dabei sein wird, aber bei den beiden anderen darf man zuversichtlich sein, dass sie in nächster Zeit aktiv an der Entwicklung Javas beteiligt sein werden.
In diesem Sinne viel Spaß bei der Lektüre!
Sebastian Meyen, Chefredakteur Java Magazin
Twitter: @smeyen