Der Kurs richtet sich an Programmierer, die bereits über Java Kenntnisse verfügen (etwa aus dem Kurs "Programmieren in Java") und ihre Kenntnisse vertiefen wollen.

Dauer

5 Tage / 40 Lehreinheiten

Termine

24.11.2025 - 28.11.2025 Anmeldung... | Gruppen-Anmeldung... 23.02.2026 - 27.02.2026 Anmeldung... | Gruppen-Anmeldung... 23.02.2026 - 27.02.2026 Anmeldung... | Gruppen-Anmeldung... 13.07.2026 - 17.07.2026 Anmeldung... | Gruppen-Anmeldung... 09.11.2026 - 13.11.2026 Anmeldung... | Gruppen-Anmeldung... 08.03.2027 - 12.03.2027 Anmeldung... | Gruppen-Anmeldung...

Inhalt

🧩 Modul 1: Objektorientierung Reloaded

Wiederholung: Vererbung, Polymorphie, Abstraktion,
Moderne Interfaces mit default/static-Methoden,
Sealed Classes, Records für DTOs und Value-Objekte

💡 Modul 2: Moderne Sprachfeatures

var, text blocks, switch expressions, Pattern Matching: instanceof, switch, record patterns,
Unnamed Patterns & Variables, Optional und Nullsicherheit in moderner Java-Codebasis

🔁 Modul 3: Funktionale Programmierung & Streams

Lambda-Ausdrücke, Method References, funktionale Interfaces,
Streams API im Detail: map, filter, flatMap, reduce,
Parallel Streams vs. traditionelles Multithreading,
Stream.toList() und neue Features

🧠 Modul 4: Clean Code, DesignPattern, Testing

Clean Code Prinzipien im Einsatz
JUnit 5: Assertions, Tests
Design Patterns: Proxy, Observer, Decorator

📦 Modul 5: Modularisierung & Packaging

Java Module System (JPMS) vs. klassische Packages,
exports, requires, Modulabhängigkeiten verstehen

🌐 Modul 6: JSON & REST-APIs

JSON-Verarbeitung mit Jackson / Gson,
record-basierte DTOs und automatische Serialisierung,
REST-Kommunikation mit HttpClient

⚙️ Modul 7: Nebenläufigkeit & Asynchrone Verarbeitung

Grundlagen: Threads, Runnable, ExecutorService,
CompletableFuture im Detail,
Structured Concurrency : Konzept & Nutzen
Virtual Threads: Einstieg & Unterschiede zu klassischen Threads

🧪 Modul 8: Fehlerrobuste Programmierung

try-with-resources, Ressourcen sicher verwalten
Null-Vermeidung mit Optional, record-Validierung
Vergleich: Assertions vs. Exception Handling

📁 Modul 9: Dateibasierte Persistenz mit File I/O

Moderne Dateiverarbeitung mit Files, Path und Streams (NIO.2),
Textdateien lesen/schreiben mit Lambdas

🗃️ Modul 10: Datenbankanbindung mit JPA (Jakarta Persistence API)

Entity-Definition mit @Entity, @Id, @OneToMany,
Validierung mit Bean Validation (@NotNull, @Size)

🆕 Spezialmodul: What's new in Java 17–24

Sealed Classes, Record Patterns, Pattern Matching für switch
Virtual Threads (Loom-Vorschau), Unnamed Patterns & Variables,
usw.

🚀 Spezialmodul: Tooling & Build
Maven/Gradle: Dependency Management, Plugins,

Projektstruktur & Build-Konventionen,
Modern Deployment,
Einführung in GraalVM Native Image:
Vorteile & Einschränkungen

Konfiguration mit Maven Plugin,

🌐 Spezialmodul: Moderne Java Frameworks

JavaFX (bei Desktop-Fokus),
Spring Boot (Mini-MVC & REST-Projekt),
Quarkus Fokus auf Native Image Support)

📦 Technische Umgebung
JDK 17 oder 21

IDE: IntelliJ IDEA mit Code Completion, Inspections, AI-Unterstützung
Build-Tool: Maven oder Gradle
Optional: Docker, Postman, GraalVM

Preiskalkulation


Wir bieten alle unsere Kurse mit flexibler Teilnahmemöglichkeit an: entweder klassisch bei uns im Kursraum oder online per MS Teams. Auch ein Wechsel an einzelnen Tagen ist möglich (hybride Durchführung).
Einfach bei der Anmeldung angeben, ob eine Online-Option gewünscht wird.

Zielgruppe

Java-Entwickler:innen mit soliden Grundlagenkenntnissen, die moderne Sprachfeatures, funktionale Programmierung, Best Practices und aktuelle Tooling-Konzepte anwenden möchten.