Seminare
Seminare

Domain-Driven Design und Clean Architecture mit Spring Boot

Seminar - GFU Cyrus AG

Sie beherrschen nach dem Seminar die Prinzipien von Domain-Driven Design und Clean Architecture und können diese gezielt in Spring-Boot-Projekten anwenden. Sie wissen, wie Sie Ihre Softwarearchitektur an der Fachlichkeit ausrichten und technische Details entkoppeln.
Termin Ort Preis*
firmenintern auf Anfrage auf Anfrage
*Alle Preise verstehen sich inkl. MwSt.

Detaillierte Informationen zum Seminar

Inhalte:
  • Clean DDD Architecture - Einführung
    • Motivation: Fachlichkeit zuerst, Technik als Detail
    • Abgrenzung zu „klassischen“ Schichtenarchitekturen

  • Spring-Boot-Anwendung als Referenz-Implementierung
    • Aufbau eines modularen Spring-Boot-Projekts (mehrere Module / Bounded Contexts)
    • Überblick über Fachlichkeit und Domänenmodell der Beispielanwendung
    • Schichtenaufbau vs. Ports-&-Adapters / Hexagonale Architektur mit Spring
    • Typischer Spring-Stack im Kurs: Spring Boot, Spring Data JPA, Spring Web (REST), ggf. Bean Validation

  • Domain-Driven Design (DDD nach E. Evans)
    • DDD-Grundbegriffe
    • Zerlegung der Domäne in Bounded Contexts (horizontaler vs. vertikaler Schnitt)
    • Ubiquitous Language und Context Maps
    • Implementierung von Building Blocks (Entity, Value Object, Aggregate, Repository, Domain Service) in Spring Boot
    • Umgang mit Domain-Events im Spring-Umfeld (synchron / asynchron)

  • Clean Architecture (nach R. C. Martin)
    • Clean Architecture als konsolidierter Ansatz (Ports & Adapters, Onion Architecture usw.)
    • Dependency Rule und Dependency Inversion im Kontext von Spring
    • Ableitung von Paket- und Modulstrukturen in einem Spring-Projekt
    • Trennung von Domänenkern, Applikationslogik und Infrastruktur (z. B. REST-Adapter, Persistenz-Adapter)

  • Business Components / Bounded Contexts in Spring
    • Konzept des Component-Based Development (CBD)
    • Business Components als DDD-Bounded-Contexts
    • Interne Clean Architecture je Business Component
    • Projekt-Strukturen: Multi-Module-Build (z. B. Maven/Gradle-Module) für Bounded Contexts
    • Kommunikation zwischen Komponenten (REST, Messaging, Events)

  • Querschnittsaufgaben und Qualitätssicherung
    • Relationale Datenhaltung mit Spring Data JPA (Concurrency, Mandantenfähigkeit, Auditing usw.)
    • Cross-Cutting Concerns:
    • Transaktionen (Spring Transaction Management)
    • Fehler- und Exception-Handling in REST-APIs
    • Validierung (Bean Validation) und Domänen-Invarianten
    • Logging und technische Metriken
    • Definition und Überwachung von Architektur-Regeln mit Werkzeugen (z. B. ArchUnit)
    • Test-Vorgehen für eine Clean DDD Architecture:
    • Unit-Tests für Domänenlogik
    • Integrationstests mit Spring Boot Test
    • Contract-Tests / API-Tests (Überblick)

  • Praxisworkshop
    • Erweiterung der Referenz-Anwendung um eine neue Subdomäne
    • Vom fachlichen Modell zur implementierten Komponente:
    • Identifikation von Bounded Contexts und Aggregates
    • Anlegen der Domänenklassen und Ports
    • Implementierung der Adapterschicht (REST-Controller, Repository-Adapter)
    • Schreiben von Tests entlang der Architektur (Domäne, Use Cases, Adapter)

Zielgruppe:

Dieses Seminar richtet sich an Java-Entwicklerinnen und -Entwickler, Softwarearchitekten sowie technische Projektleiter, die moderne Architekturansätze in Spring-Projekten umsetzen möchten. Besonders angesprochen sind Personen, die bereits mit Spring Boot arbeiten und ihre Anwendungen strukturell und fachlich auf ein neues Niveau heben wollen.



Teilnahmevoraussetzungen


Sie benötigen:

  • Erfahrung in der Java-Entwicklung
  • Grundkenntnisse im Umgang mit Spring Boot
  • Grundkenntnisse im Umgang mit Netzwerken
  • Idealerweise erste Erfahrungen mit Softwarearchitektur oder domänengesteuerter Entwicklung
Seminarkennung:
S6078
Nach unten
Nach oben
Wir setzen Analyse-Cookies ein, um Ihre Zufriedenheit bei der Nutzung unserer Webseite zu verbessern. Diese Cookies werden nicht automatisiert gesetzt. Wenn Sie mit dem Einsatz dieser Cookies einverstanden sind, klicken Sie bitte auf Akzeptieren. Weitere Informationen finden Sie hier.
Akzeptieren Nicht akzeptieren









Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha



Bei der Verarbeitung Ihrer personenbezogenen Daten im Zusammenhang mit der Kontaktfunktion beachten wir die gesetzlichen Bestimmungen. Unsere ausführlichen Datenschutzinformationen finden Sie hier. Bei der Kontakt-Funktion erhobene Daten werden nur an den jeweiligen Anbieter weitergeleitet und sind nötig, damit der Anbieter auf Ihr Anliegen reagieren kann.







Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha