Das Java-Jahr 2012 aus der JAXenter-Perspektive

JAXenter-Jahresrückblick: Das war Java 2012 [Teil 3]

Hartmut Schlosser

Schließen wir unseren Jahresrückblick mit den Entwicklungen der Monate September, Oktober, November und Dezember. Auch im dritten Tertial zeigte sich eine beeindruckende Bandbreite an Ereignissen und Technologie-Entwicklungen, die offenbart, dass die Java-Community zu den aktivsten Technologie-Communities weltweit gehört!

September


src=“http://entwickler.com/develop/zonen/magazine/onlineartikel/pspic/picture_file/65/Linda50ed415b4d3fb.png?1357726139″ hspace=“10″ vspace=“5″ alt=““>

Nach der Jigsaw-Verbannung aus Java 8 folgte im September die Hiobsbotschaft, dass nun auch die Cloud-Spezifikationen nicht wie geplant Teil von Java EE 7 werden sollten. Oracles Linda DeMichiel (Bild), Spec Lead für Java EE 7 und Java Persistence 2.1, begründete die Verschiebung mit der fehlenden Reife der Technologien für Provisionierung, Mandantenfähigkeit, Elastizität und Cloud-Deployments.

Das Wort „Verfrühte Standardisierung“ machte die Runde – statt, wie schon in früheren JSRs geschehen, einen wackeligen Kompromiss zum Standard zu erheben, der nicht von einem breiten Konsens führender Industriepartner getragen würde, wolle man in Java EE einen konservativen Ansatz verfolgen und versuchen, die Dinge „von vorneherein richtig anzugehen“. Im Klartext hieß dies: Abwarten, wie sich der Cloud-Markt entwickelt, und diesen Entwicklungen dann im Rahmen von Java EE 8 (geplantes Release: 2015) Rechnung tragen. Oder anders ausgedrückt: „Code first“ statt „Spec first“.

Anders als bei der Jigsaw-Verschiebung herrschte in der Community im Allgemeinen Verständnis für diese Entscheidung vor. 45 % gaben im JAXenter-Quickvote an, dass Java EE 7 auch ohne die Cloud Features ein wichtiges Release sei. 21 % meinten: „Das Verschieben der PaaS Specs auf Java EE 8 ist zwar ärgerlich, aber angesichts der mangelnden Reife des Cloud-Marktes der einzig gangbare Weg“. Nur 17% hielten die Verschiebung für ein Desaster. Dennoch stellten wir auf JAXenter die Frage, ob die Java-EE-Expertengruppe mit einer proaktiveren Haltung und der frühen Vorlegung einer Cloud-Spezifizierung in Java EE 7 nicht ein Zeichen für die Innovationskraft der Java-Community gesetzt hätte. Die Wolkenmusik spielt jetzt woanders, bei CloudFoundry, CloudBees, OpenStack, OpenShift, Jelastic, Heroku oder den Klassikern Amazon Beanstalk, Google App Engine, Microsoft Azure: Java EE 7 und die vertane Chance.

Einen intellektuellen Schlagabtausch lieferte sich Java-Magazin-Chefredakteur Sebastian Meyen auf JAXenter mit Cameron McKenzie von TheServerSide.com. McKenzie suchte nach dem nächsten disruptiven Element, welches die Java Enterprise Community in die nächste Ära des Enterprise Computing führen könnte. Dabei verwies er auf Spring-Gründer Rod Johnson, der mit seiner Konzeption der Dependency Injection (DI) vor Jahren die Java-Welt revolutionierte. Brauchen wir einen neuen Rod, eine neue Lichtgestalt, die die Java-Welt rettet?

Sebastians Antwort darauf lautete: Nein! Zwar müsse die Java-Welt tatsächlich auf tiefgreifende Veränderungen des Technologie-Marktes reagieren – und hier mangele es derzeit noch an einer deutlichen Vision, wohin die Reise gehen soll. Doch die Veränderung könne nicht durch einen „Rod Johnson 2.0“ hervorgebracht werden, sondern komme in der Form eines „Perfect Storm“, in dem verschiedene Faktoren zusammenspielen:

  • Das Web (I): Angesichts der fortschreitenden Modernisierung der Browser und der dadurch begünstigten Renaissance von JavaScript werden eine Vielzahl an Funktionen, die bisher allein dem Server überlassen waren, auf den Client verlagert. Die klassischen Java-basierenden Server-side Frameworks laufen Gefahr, schon bald zum alten Eisen zu gehören.
  • Das Web (II): REST, aber auch WebSockets, signalisieren einen veränderten Umgang der Enterprise-Entwickler mit dem Web. Das Web wandelt sich endgültig von einem reinen Transportmedium für Messages und Pages hin zu einem globalen Betriebssystem, in welchem Ressourcen und Services bereit gestellt werden (Hypermedia).
  • Mobile: Entwickler von Geschäftslösungen bauen nicht mehr „Websites“ oder „Webanwendungen“, sondern Dienste, die über ein gut gemachtes API für beliebige Service-Endpoints zur Verfügung stehen – seien dies nun von Menschen bediente Desktop-Browser, Mobilgeräte (Tablets, Smartphones) oder auch Embedded-Systeme bis hin zu primitiven Chips und Sensoren.
  • Virtualisierung: Die Public Cloud, wie sie von Amazon, Microsoft und vielen anderen Anbietern aufgebaut wurde, bietet eine neue „Self-Service-Komponente“: Einfach per Kreditkarte aktivierbar und über ein nutzerfreundliches Interface konfigurierbar haben die Cloud-Angebote eine neue Qualität für den Zugriff auf Rechner-Ressourcen ins Spiel gebracht.
  • Big Data: Aus den exponentiell anwachsenden Datenmengen, die durch Sensoren, Social Media und steigende Vernetzung entsteht, will man in Nahezu-Echtzeit Nutzen ziehen. Keine triviale Aufgabe.
  • DevOps: Die DevOps-Bewegung möchte die traditionellen Grenzen zwischen Devs und Ops niederreißen und im Sinne des Geschäftserfolgs eine neue Kultur der Zusammenarbeit etablieren. Zudem entsteht mit Continuous Delivery ein Bündel an Techniken, welches die Auslieferung von Software erheblich beschleunigen und automatisieren soll.

Sebastians Fazit: Eine einzelne Person oder Technologie – etwa Martin Odersky mit Scala – kann dieser Vielzahl heterogener Herausforderungen nicht gerecht werden. Die IT-Welt ist erheblich dezentraler geworden, deswegen braucht es speziellere, passgenauere und kleinere, „evolutionäre“ Lösungen.

Was gab es sonst noch im September?

Neue Versionen legten die Projekte Atmosphere 1.0, Oracle Virtual Box 4.2 und Eclipse Vex 1.0 vor. Die Eclipse Foundation shippte das erste Service-Release für Eclipse Juno. Kurz nach dem Auslieferungsstart des iPhone 5 stellte Google seinen Java-Objective-C-Konverter Open Source zur Verfügung. Im neuen OpenJDK-Projekt Sumatra soll mittels einer nativen JVM expliziter Grafikprozessor-Support in Java bereitgestellt werden.


src=“http://entwickler.com/develop/zonen/magazine/onlineartikel/pspic/picture_file/56/Doug_Cutti50ed41bb468b2.png?1357726139″ hspace=“10″ vspace=“5″ alt=““>

Das JAXenter-Feature des Monats war Wicket 6. Jochen Mader stellte die Neuerungen der sechsten Auflage des Webframeworks vor und wagte den Blick unter die Motorhaube. Außerdem sprachen wir mit Hadoop-Gründer Doug Cutting (Bild), der uns verriet, was ihn seinerzeit, als es um die Technologiewahl für Hadoop ging, an Java gereizt hatte:

Die Kombination aus relativ guter Performance einerseits und den Features und der Verlässlichkeit höherer Programmierung andererseits.

[… Für Hadoop ist die größte] Herausforderung, dem Hype gerecht zu werden. Bisher haben wir uns ganz gut angestellt: Man kann Daten wirklich speichern und effektiv verarbeiten. Aber es handelt sich um eine junge Technologie, der die Vorstellungen schnell vorauseilen.

Oktober


src=“http://entwickler.com/develop/zonen/magazine/onlineartikel/pspic/picture_file/87/James_Gosl50ed3b4f8387b.png?1357724495″ hspace=“10″ vspace=“5″ alt=““>

Im Oktober schlug die Konferenzsaison zu: JAX London, EclipseCon Europe, Oracle Open World und natürlich die JavaOne 2012. Nachdem das erste Java-Mekka unter der Oracle-Ägide im Vorjahr noch viel Kritik einstecken musste, war der Grundtenor zur JavaOne 2012 weitaus positiver. Spektakuläre Ankündigungen gab es zwar keine – aber das darf man getrost als Erfolg der Transparenzbestrebungen Oracles werten.

Eindrucksvoll war aber doch die Zusammenschau aller aktuellen Entwicklungsstränge für Java-basierte Technologien. Einige Fakten zusammengefasst:

  • Java SE 8 soll im September 2013 kommen – ohne Jigsaw, dafür mit Projekt Lambda, neuen Date, Time und Kalender APIs, Annotationen für Java Typen (JSR 308), etc.
  • Zum Release des JDK 8 soll die Konvergenz der beiden JVMs HotSpot und JRockit abgeschlossen sein.
  • Java EE 7 soll im zweiten Quartal 2013 fertig werden – ohne Cloud Specs, dafür mit neuen Features für die Entwicklung skalierbarer HTML5 Applikationen, u.a. Support für non-blocking (event-driven) I/O Servlet 3.1 API, JCache, JSON-P, WebSockets, JAX-RS 2.0 Client API, JPA Schema Generierung und ein verbessertes Sicherheitskonzept.
  • Im Projekt Nashorn entsteht eine neue JavaScript-Engine, die für die JVM optimiert ist.
  • In NetBeans 7.3 wird die Entwicklung von HTML5/CSS3/JavaScript-Anwendungen unterstützt (Codename: Projekt Easel)
  • JavaFX soll spätestens zum Java SE 8 Release komplett Open Source werden. Relevante Teile von JavaFX sollen dann über den JCP standardisiert werden, angepeiltes Zieldatum dafür ist Java SE 9.
  • Das Canoo-Projekt „Dolphin“ ermöglicht es, eine Server-seitige Applikationslogik über ein Präsentationsmodell mit unterschiedlichen Client-Technologien zu verbinden, etwa JavaFX, Swing, SWT oder RCP.

Für uns war Lars Röwekamp vor Ort und identifizierte als die drei Top-Themen der Konferenz: JavaFX, Java EE und Java Embedded. Dem Thema Embedded war dieses Mal gar eine ganze Unterkonferenz gewidmet. Hier investiert Oracle offenbar massiv, denn der boomende M2M-Markt lockt mit fetten Gewinnaussichten.

Und siehe da: Das von vielen bereits totgesagte Java ME hatte plötzlich seine Renaissance: Das neu vorgestellte Oracle Java ME Embedded 3.2 ist eine komplette Client Java Runtime, die für Microcontroller und andere Ressourcen-beschränkte Devices optimiert ist. Sogar einige neue JSRs für Java ME wurden eingereicht, die später vom Exekutiv-Komitee bestätigt wurden. Doch scheinen diese Entwicklungen im Embedded-Bereich wenig Community-getrieben zu sein:

Gerade im Embedded-Umfeld fällt es ein wenig schwer, zwischen den offiziellen JSR APIs und proprietären Oracle-Tools und -Frameworks zu unterscheiden. Neben Referenzimplementierungen für die einzelnen APIs gibt es einige darauf aufsetzende Rundum-Sorglos-Pakete, wie zum Beispiel die Java Embeded Suite, die auf die Implementierung von M2M-Systemen fokussiert ist.

Lars‘ Fazit zur JavaOne 2012: „Die JavaOne ist nach wie vor das wertvollste Networking-Event in der Java-Community. Selbst James Gosling (Bild) hat es sich nicht nehmen lassen, wieder mit dabei zu sein – wenn auch nur als Überraschungsgast bei der Java Community Keynote.“

Wer nach spektakulären Neuerungen suchte, musste im Oktober über den Java-Tellerrand blicken. Natürlich bewegte das Release von Windows 8 die gesamte IT-Welt. Außerdem brachte Microsoft die neue JavaScript-Sprache TypeScript an den Start, eine JavaScript-Obermenge, die optionale Erweiterungen wie Typisierung für den JavaScript-Standard Ecmascript 5 definiert. Die Kollegen vom Windows Developer räumten TypeScript gute Chancen auch außerhalb des Microsoft-Kosmos ein.

Die Java-Welt feierte immerhin das Release von Apache Lucene 4.0 – auf JAXenter hatten wir den exklusiven Artikel von Uwe Schindler dazu. Neue Versionen gab es zudem mit dem Google Web Toolkit 2.5 (Lesetipp: „Google Web Toolkit: Was ist der Stand der Dinge?“ von Papick Taboada), der JAX-RS-2.0-Implementierung aus dem Hause JBoss Resteasy 3.0, der Big-Data-Plattform GridGain 4.3 und JRuby 1.7.

Android Jelly Bean 4.2 brachte Nützlichkeiten wie Swype, Multiuser-Funktionen und Panorama-Aufnahmen. Und spätestens mit Jelly Bean mussten sich die Androiden endgültig nicht mehr hinter den iPhones der Welt verstecken – von den floppenden iOS 6 Maps einmal ganz abgesehen (im Web-Service-Bereich hatte Google schon immer seine Stärken).


src=“http://entwickler.com/develop/zonen/magazine/onlineartikel/pspic/picture_file/72/Lars_Vogel50ed40e62600a.png?1357726139″ hspace=“10″ vspace=“5″ alt=““>

Im Oktober wurde Lars Vogel (Bild) zum Java Champion gekürt. Im Jahr 2012 waren es sechs Personen, denen diese Ehre zuteil wurde: Agnes Crepet, Victor Grazi, Yara Senger, Martijn Verburg, Lars Vogel und Johan Vos.

Top-JAXenter-Artikel im Oktober war Christian Grobmeiers „Das Comeback des Jahres: Apache log4j 2.0.“ Endlich wurden die Arbeiten an der zweiten Major-Version des populären Java-Logging-Projektes aufgenommen. Mit welchem Entwicklungsziel, das interessierte Sie im Oktober am meisten!

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.