Loslegen
Javaneer
100 % kostenlos · offener Lehrplan

Vom Anfänger
zum Java-Entwickler

Der vollständige, interaktive Pfad für absolute Anfänger. Keine Erfahrung nötig - nur Neugier. Lerne die gesamte Java-Welt mit realen Analogien, ausführbarem Code und Visualisierungen, bei denen es endlich Klick macht.

41
Stufen
250
Lektionen
64h+
An Inhalten
Scrollen zum Entdecken

Ein Lernerlebnis, das den Groschen fallen lässt

Jede Lektion orientiert sich daran, wie Menschen wirklich lernen - zuerst die Analogie, dann das Konzept, dann Code zum Ausführen.

Zuerst reale Analogien

Jedes Konzept beginnt mit etwas, das du bereits kennst - eine beschriftete Kiste, ein Bauplan, eine Warteschlange am Kaffeeautomaten - noch vor der ersten Codezeile.

Ausführbarer, kommentierter Code

Syntaxhervorgehobene Beispiele mit der erwarteten Ausgabe direkt daneben. Kopieren, einfügen, ausführen und zusehen.

Interaktive Visualisierungen

Beobachte Stack und Heap, die Buckets einer HashMap, den Lebenszyklus eines Threads und eine Stream-Pipeline in Aktion.

Quizze & Fortschritt

Überprüfe dein Verständnis nach jeder Lektion und sieh zu, wie sich deine Fortschrittsringe füllen.

Ein echter Pfad, keine Dokumentenhalde

Sieben aufbauende Stufen führen dich von Hallo, Welt! bis zu Spring Boot und Systemdesign - in der richtigen Reihenfolge.

Englisch & Deutsch

Lerne in der Sprache, in der du denkst. Oberfläche und Lektionen gibt es auf Englisch und Deutsch.

Die komplette Java-Reise

Jeder Pfad führt zum selben Ziel: echte, berufsreife Beherrschung. Wähle, wohin du gehörst, und leg los.

☕

Zero to Java Engineer

The complete Java language & platform.

Starte bei null. Verstehe, was Programmieren ist, was Java ist, woher es kommt, wer es pflegt, und mache deinen Rechner bereit für dein erstes Programm.

8 Stufen54 Lektionen16 Stunden
Pfad beginnen
🌿

The Spring Path

From Java engineer to Spring professional.

Das Herz des gesamten Ökosystems: der IoC-Container, Beans und ihr Lebenszyklus, Dependency Injection, Konfiguration, Profile und aspektorientierte Programmierung. Beherrsche das, und der Rest von Spring fügt sich zusammen.

14 Module90 Lektionen23 Stunden
Pfad entdecken
🎯

The Interview Path

From Java engineer to interview-ready.

Das Fundament jedes Algorithmus-Interviews: ein Problem zerlegen, Zeit- und Speicherkomplexität einschätzen, amortisierte Kosten verstehen und die richtige Datenstruktur wählen - plus der Katalog der Muster, den der Rest des Pfads übt.

9 Module46 Lektionen11 Stunden
Pfad entdecken
🏛️

The Architecture Path

From engineer to senior: judgment, not just APIs.

Die fünf SOLID-Prinzipien so, wie erfahrene Entwickler sie wirklich nutzen - als Heuristiken für leicht änderbaren Code, angewandt auf eine unordentliche, aber reale Ledger-Codebasis statt auf Spielbeispiele. Single Responsibility, Open/Closed, Liskov-Substitution, Interface Segregation und Dependency Inversion - jedes als Lösung für einen konkreten Schmerz.

8 Module48 Lektionen12 Stunden
Pfad entdecken
🟣

Kotlin for Java Developers

From Java engineer to polyglot JVM engineer.

Kotlins Superkraft für Java-Entwickler ist, dass es kein Rewrite ist - es kompiliert zu demselben Bytecode und ruft Java (und wird von Java gerufen) nahtlos auf, sodass man es Datei für Datei einführt. Der pragmatische Fall für Kotlin, das Kompilieren neben Java, das Aufrufen in beide Richtungen mit den Interop-Annotationen, die Toolchain und wie ein echtes Team Kotlin in eine bestehende Java-Codebasis einführt.

2 Module12 Lektionen3 Stunden
Pfad entdecken

…und jede Lektion auf dem Weg

🌱Was ist Java?🌱Das Java-Ökosystem🧩Java-Syntax & Kontrollfluss🏗️OOP-Grundlagen🏗️Records, versiegelte Klassen & Enums🚀The Collections Framework🚀Date/Time & I/O⚡Concurrency Principles⚡The Stream API⚡Modules (JPMS)🎯SOLID Principles🎯Design Patterns - Creational🎯Java Coding Conventions💼Build Automation Tools💼Spring Boot Principles💼Packaging & Deployment⚛️Executors & CompletableFuture⚛️Atomics & Lock-Free Thinking🌿Warum Spring & das Ökosystem🌿Dependency Injection im Detail🌿Aspektorientierte Programmierung🚀Starter & Abhängigkeitsverwaltung🚀Actuator: produktionsreife Endpunkte🌐REST-Controller & Mapping🌐Ausnahmebehandlung & ProblemDetail🗄️Spring Data JPA & Repositories🗄️Transaktionen mit @Transactional🗄️Caching & jenseits von JPA🔐Zugriffsregeln konfigurieren🔐OAuth2 & OpenID Connect🧪Web-Slice-Tests mit @WebMvcTest🧪Integrationstests mit Testcontainers⚡Reaktive Programmierung & Reactor⚡Async & Scheduling⚡Messaging mit RabbitMQ☁️Service Discovery☁️Verteiltes Tracing & Observability🚀Strukturiertes Logging🚀Spring Modulith🏛️Das Abschlussprojekt🏛️Die API absichern🏛️Retrospektive & der Weg nach vorn⚙️Reader, Processor & Writer◈REST vs. GraphQL◈Das N+1-Problem & Batching🔐Einen Authorization Server betreiben🔐Service-zu-Service & Föderation📊Verteiltes Tracing🎯Wie man es löst🎯Amortisierte Analyse🔢Das Zwei-Zeiger-Muster🔢In-Place-Manipulation🔗Eine verkettete Liste umkehren🔗Queues & Deques🗝️Gruppieren & Deduplizieren🌳Baum-Traversierungen🌳Niedrigster gemeinsamer Vorfahre🕸️BFS & DFS🕸️Kürzeste Wege & Union-Find🔍Sortier-Grundlagen🧠Rekursion, tief🧠Eindimensionale DP💬System-Design-Grundlagen💬Dein Übungsplan🏛️Open/Closed🏛️Dependency Inversion🧩Strategy & Template Method🧩Observer & wann Patterns schaden🗺️Aggregate & Konsistenz🗺️Repositories & wann DDD⬡Die Schichten der Clean Architecture⬡Lohnt es sich?🧱Grenzen erzwingen🧱Die Startrampe zu Microservices🔌Versionierung & Evolution🔌Auch Events sind Verträge🌱Kopplung & Kohäsion🌱Architecture Decision Records🗺️Caching🗺️Ein durchgearbeitetes Design🟣Java aus Kotlin aufrufen🟣Kotlin pragmatisch einführen✍️Alles ist ein Ausdruck✍️Pakete, Sichtbarkeit & Exceptions
🌱Die Geschichte von Java🌱Einrichtung & Hallo, Welt!🧩Strings & Arrays🏗️Die vier Säulen🏗️Object, Gleichheit & Unveränderlichkeit🚀Generics🚀Networking & HTTP⚡Lambdas & Functional Interfaces⚡Annotations & Reflection🎯Data Structures & Algorithms🎯General Engineering Principles🎯Design Patterns - Structural💼JDBC & Databases💼Java Frameworks Overview💼System Design💼Security Essentials⚛️Virtual Threads, In Depth⚛️Modern Java: Records, Sealed Types & Patterns🌿Inversion of Control & der Container🌿Konfiguration & Component Scanning🚀Boot & Auto-Konfiguration🚀Konfiguration in Spring Boot🚀Verpacken & Ausführen🌐Request- & Response-Bodies🌐Dokumentieren mit OpenAPI🗄️Abfragen: abgeleitet, JPQL & nativ🗄️Beziehungen & das N+1-Problem🔐Spring Security & die Filterkette🔐Benutzer & Passwort-Hashing🔐Methoden-Sicherheit, CORS & CSRF🧪Daten-Slice-Tests mit @DataJpaTest🧪Gesicherte Endpunkte testen⚡Spring WebFlux⚡Anwendungsereignisse☁️Vom Monolithen zu Microservices☁️Das API-Gateway☁️Ereignisgesteuerte Microservices🚀Virtuelle Threads🚀Ein Vorgeschmack auf Spring AI🏛️Gerüst & das Domänenmodell🏛️Die Testpyramide bauen⚙️Warum Batch-Verarbeitung⚙️Neustartfähigkeit & Fehlertoleranz◈Schema-First-Design◈Mutationen & wann GraphQL wählen🔐Authorization Code & PKCE📊Metriken, Logs & Traces📊Strukturierte Logs & Korrelation🎯Big-O in der Praxis🎯Die richtige Datenstruktur wählen🔢Das Sliding Window🔢String-Grundlagen🔗Schnelle & langsame Zeiger🗝️Wie Hashing funktioniert🗝️Der Komplement-Trick🌳Rekursiv auf Bäumen denken🌳Balance, Heaps & Tries🕸️Gitter als Graphen🔍Binäre Suche, wirklich verstanden🔍Heaps & Top-k🧠Backtracking🧠Zweidimensionale DP💬Verhaltensfragen🏛️Prinzipien, keine Regeln🏛️Liskov-Substitution🧩Patterns als Vokabular🧩Adapter & Facade🗺️Die Domäne modellieren🗺️Domain Events⬡Die Dependency Rule⬡Die Domäne rein halten🧱Das falsche Entweder-oder🧱Kommunikation zwischen Modulen🔌REST, richtig gemacht🔌Fehler & Idempotenz🌱Architektur ist ein Verb🌱Technische Schuld managen🗺️Ein wiederholbarer Ansatz🗺️Datenbanken im großen Maßstab🟣Warum Kotlin?🟣Kotlin aus Java aufrufen✍️val, var & Typinferenz✍️Strings & Basistypen
🌱Wer pflegt Java?🧩Programmiergrundlagen🧩Debugging & Fehler lesen🏗️Interfaces & abstrakte Klassen🚀Exception Handling🚀File Handling⚡Multithreading⚡Functional Programming Principles⚡JVM Internals🎯Clean Code Principles🎯Design Principles🎯Design Patterns - Behavioral💼Testing💼ORM & Persistence💼Logging & Observability⚛️The Java Memory Model⚛️Structured Concurrency & Scoped Values⚛️The Foreign Function & Memory API🌿Beans, Geltungsbereiche & Lebenszyklus🌿Properties, Profile & das Environment🚀Deine erste App: start.spring.io🚀DevTools & die Inner Loop🌐Spring MVC & der Anfragefluss🌐Eingaben validieren🌐Andere APIs aufrufen🗄️Paging, Sortierung & Projektionen🗄️Datenbankmigrationen mit Flyway🔐Authentifizierung vs. Autorisierung🔐Zustandslose Auth mit JWT🧪Der Spring-Test-Stack🧪Kollaborateure mocken🧪Teststrategie, Testdaten & CI⚡Reaktive Daten mit R2DBC⚡Messaging mit Kafka☁️Ausgelagerte Konfiguration☁️Resilienz: Circuit Breaker🚀Observability mit Actuator🚀GraalVM-Native-Images🚀Paketierung & Deployment🏛️Die Web- & Datenschicht🏛️Ereignisse & Produktionsreife⚙️Jobs, Steps & Chunks⚙️Scheduling & Skalierung◈Resolver & Data Fetcher🔐OAuth2 & OIDC, genau erklärt🔐Tokens: JWT vs. Opaque📊Metriken mit Micrometer📊SLOs, Dashboards & Alerts🎯Speicherkomplexität🎯Der Musterkatalog🔢Präfixsummen🔗Grundlagen verketteter Listen🔗Stacks in der Praxis🗝️Zählen & Häufigkeit🗝️Einen LRU-Cache entwerfen🌳Binäre Suchbäume🕸️Einen Graphen darstellen🕸️Topologische Sortierung🔍Binäre Suche über die Antwort🔍Quickselect & Partitionierung🧠Einführung in dynamische Programmierung💬Dein Denken kommunizieren💬Wenn du feststeckst🏛️Single Responsibility🏛️Interface Segregation🧩Factory & Builder🧩Decorator & Composite🗺️Entities & Value Objects🗺️Bounded Contexts⬡Ports & Adapter⬡Eine hexagonale App testen🧱Module, keine Schichten🧱Spring Modulith🔌Ressourcen entwerfen🔌Verträge & Consumer-Driven Testing🌱Fitness-Funktionen🌱Die Würgefeige🗺️Kapazitätsabschätzung🗺️Queues & Lastglättung🟣Neben Java kompilieren🟣Die Kotlin-Toolchain✍️Funktionen, Defaults & benannte Argumente✍️Kontrollfluss & Ranges

Warum Java lernen?

Nach drei Jahrzehnten betreibt Java noch immer die wichtigste Software der Welt.

Überall zu finden

Android-Apps, Bankensysteme, E-Commerce-Giganten, Netflix und Minecraft laufen alle mit Java.

Für die Ewigkeit gebaut

Javas Abwärtskompatibilität und Stabilität machen es zur ersten Wahl für Systeme, die jahrzehntelang laufen müssen.

Eine Karriere, die sich lohnt

Java-Entwickler gehören zu den gefragtesten und bestbezahlten Fachkräften der Branche.

Einmal schreiben, überall ausführen

Die JVM lässt denselben Code auf jedem Betriebssystem laufen - ein Versprechen, das Java seit 1995 hält.

Bereit für deine erste Zeile Java?

Begib dich auf die Reise vom Anfänger zum Entwickler. Kostenlos, interaktiv und es geht sofort los.