- Neue Release-Konzepte:
- Einführung in das neue Release-Zyklus-Modell (6-Monats-Zyklen, LTS-Versionen).
- Auswirkungen der Release-Zyklen auf die Entwicklung.
- Überblick über die wichtigsten Neuerungen seit Java 9 bis zur aktuellen Version
Modularisierung mit dem Java Platform Module System (JPMS):
- Grundlagen der Modularisierung: Aufbau und Struktur von Modulen.
- Verwendung von module-info.java zur Definition von Abhängigkeiten und Zugriffen.
- Umgang mit Reflection im Modulsystem und dessen Einschränkungen.
- Tools: jlink zur Erstellung modularisierter Laufzeitumgebungen sowie jdeps zur Analyse von Modul- und Klassenabhängigkeiten
- Integration des Modulsystems in Build-Tools wie Maven und Gradle.
Syntax-Erweiterungen:
- Neue Sprachfeatures wie var, erweiterte switch-Ausdrücke, Textblöcke sowie verbesserte NullPointerException-Details
- var, erweiterte switch-Ausdrücke, Textblöcke und verbesserte NullPointerException-Details.
Standard-API-Erweiterungen
- Einführung in das Flow-API für reaktive Programmierung und asynchrone Verarbeitung.
- Neues HTTP Client API für die Arbeit mit HTTP/2 und WebSocket.
- Verbesserungen in der Prozess-API (z.B. ProcessHandle), StackWalker API, und Logging API.
Verbesserungen bestehender Klassen:
- Erweiterungen von Klassen wie Optional, Stream, CompletableFuture.
Pattern Matching, Records und Sealed Classes:
- Einführung von Pattern Matching für instanceof und switch.
- Verwendung von Records zur Modellierung von Datenklassen.
- Einführung von Sealed Classes zur Einschränkung der Vererbung.
Sonstige Neuerungen:
- Multi-Release JARs, Optimierungen der Garbage Collection (ZGC, Shenandoah).
- Sicherheits- und Performanceverbesserungen, neue Methoden in den Collection-APIs.
Methode
In Vorträgen vermitteln Ihnen unsere Trainer:innen die Schulungsinhalte, die Sie in Diskussionen mit den anderen Teilnehmenden vertiefen und in praktischen Übungen direkt am System anwenden und festigen können.