Spring naar content

“Clean Hexagonal Onion” with a dash of DDD in Spring

Abstracts

In this workshop, participants will get to know the “clean hexagonal onion” architecture pattern and how to apply it with a dash of Domain-Driven Design to a Spring Boot application. The “Clean hexagonal onion” architecture pattern is inspired by Ports & Adapters by A. Cockburn, Onion Architecture by J. Palermo and Clean Architecture by Uncle Bob and the CQRS pattern. Ever wondered how to combine all these patterns and implement that in a Spring Boot app? This workshop will guide you through it!

Check out this post from our colleague Maik:

https://www.linkedin.com/posts/maik-kingma_javaland-thankyou-javaland-activity-7046502816235859968-1jkY?utm_source=share&utm_medium=member_desktop

Training content

We will cover:

  • Deep dive into the architecture layers of the clean hexagonal onion
  • Design of REST controllers: Read vs. Write with CQRS
  • Domain modeling done right
  • Domain services: When to use them and what domain logic is
  • Decoupling the domain from the rest of the world
  • Domain Entity vs Data Entity: how to map correctly
  • Dependency Inversion Principle: how to stop external APIs from polluting our domain
  • Domain Events in Spring: mainstream best practices
    …and much more!

Prerequisite knowledge

  • Java,
  • Docker
  • Spring
  • basic knowledge in Domain-Driven Design
  • SOLID
  • Clean Architecture Pattern
  • Hexagonal Architecture Pattern
  • Onion Architecture Pattern.
Goal of the training
  • Learn how to apply DDD in Spring
  • Learn how to make use of the ‘Clean Hexagonal Onion’ pattern
  • Learn how Domain events in Spring support you in developing Event-Driven Software
  • Learn how to protect our domain with an Anti-Corruption-Layer (ACL)
  • Have a lot of fun together and write some awesome code!
Duration & location
  • Duration: The time needed for this Training is one (1) day.
  • Location :Can be at the/experts office in Breda or we can discuss an other location which fits your team.
Date

We need a minimum of 8 participants to plan this Training. Based on the registrations we can communicate a definite date.

Aanmeldformulier trainingen

Naam(Vereist)