Dieses Java! Da täuscht das jahrelang Stagnation vor. Man hat sich doch so an Java 1.5 gewöhnt. Naja, die Lambdas in 1.8 waren schon schick.
Aber nur, weil man etwas weniger tippen muss, extra so JDK aktualisieren? Come on!
Aber dann ging alles Schlag auf Schlag! Während Bene und Holger sich zunächst verschämt, dann völlig ungeniert nach anderen Sprachen umschauten und sogar Spaß dabei hatten, schleicht Java klammheimlich die Versionsleiter hoch.
Das ist nicht mehr das Java, wie wir es kannten: Type Inference, Pattern Matching. Wie sollen wir da denn noch auf Java meckern? Wir sind überfordert!
Zum Glück kommt Java-Tausendsassa Michael genau zur rechten Zeit und kann uns beruhigen. Er packt seine prall gefüllte Java-Kiste aus und hilft uns aus unserer Schockstarre heraus.
Wir zeichnen den Weg von Java 9 bis hin zum kommenden Java 14 nach und besprechen die aus unserer Sicht spannendsten Features. Auch ein Blick in die weitere Zukunft darf nicht fehlen.
Klar, dass wir da einige Features unter den Tisch fallen lassen müssen. Klar ist auch, dass wir einige Features schlicht vergessen. Klar ist aber sowas von auch, dass es wieder sehr lang wird.
Viel Spaß mit unserem Java-Ausflug! Und danke, Michael!!
Links
- Michael Vitz ist heute unser Gaststar.
- Michael ist ein innoQler.
- Er erzählt oft und gerne auf Konferenzen über neue Java-Features.
- Im Java Spektrum schreibt er die beliebte Kolumne „Der Praktiker“.
- Holger traut sich mal wieder auf eine Bühne und hält einen Talk über cucumber.js und BDD. (Psssst: 15.01.2020 in Solingen. Kommt vorbei … :-))
- Wir philosophieren über Hiphop und Fatoni. Und was das Ganze mit Software-Entwicklung zu tun hat! Popkultur und Software. Das ist dann Software-Kultur! Wir referenzieren den Podcast Schacht & Wasabi.
- Was ist denn in der Zwischenzeit in Java eigentlich alles passiert?
- Mit Java 9 gabs eine Zeitenwende. Eine neue Ära!
- Wir setzen das Java Modulsystem irgendwie nicht ein. Ihr denn?
- Java kann mittlerweile auch Local Type Inference! Etwas weniger Tipparbeit und Noise.
- Auch ein (angenehmer) HTTP-Client ist jetzt Bestandteil des JDK.
- Mit dem letzten Release Java 13 kann Java jetzt auch (bequemer) mit mehrzeiligen Strings umgehen.
- Es gibt mittlerweile einen bunten Blumenstrauß an Garbage Collectoren. ACHTUNG! Hier hat sich ein kleiner Fehler eingeschlichen. Michael bittet uns zu korrigieren!
- Concurrent Mark and Sweep
- Garbage First (G1)
- Zero GC
- Dies ist der GC für große Heaps. NICHT der No-op GC (wie in der Folge gesagt).
- Epsilon GC
- Dies ist der No-op GC. NICHT der GC für große Heaps (wie in der Folge gesagt).
- Auch Value Types sind jetzt ein Thema in Java.
- Switches können mittlerweile nicht nur ein Statement sein, sondern auch eine Expression. Cool!
- Joda Stephen ist nicht begeistert.
- Pattern matching for instance of – Scala Pattern-Match für Arme: https://openjdk.java.net/jeps/305
- Project Loom: Asynchronität neu gedacht in der JVM.
- Foreign-Memory Access API (Incubator) – Ersatz für sun.misc.Unsafe:
- Helpful NullPointerExceptions – dass da früher keiner drauf gekommen ist…
- Records (Preview) – Wie hängt das mit Project Valhalla zusammen? – Wir klären das in der Folge!
Bier
- Zuerst gibt es ein alkoholfreies IPA von Lervig. No Worries. Leider nicht so geil.
- Dann gibt es ein New World Pale Ale von Frau Gruber. Das Diamond in Orbit. Kurz: Sehr! Geil! Fruchtig!
- Bier ist ein gutes Stichwort! Ein New England IPA. Von Lervig! Und Fuerst Wiacek! Das Aussie Freeze Pop! Auch geil! Etwas bitterer als das Frau Gruber. Aber auch fruchtig. Sehr geil!