GEDOPLAN

Clean DDD Architecture Workshop English

Domain-Driven Design and Clean Architecture in Practical Use

  • Modern architectural approaches for experienced JEE developers and software architects
  • The concepts taught are put to practical use in extensive demo and exercise sections.

Beschreibung

Jakarta enterprise applications are typically service-oriented and implemented with a classic layered architecture. However, due to the current discussion about microservices, Domain-Driven Design and the associated object-oriented programming are experiencing growing attention again.

In this context, the term Clean Architecture plays an important role. And last but not least, executable deployment units must be implemented for the Jakarta Enterprise platform, which can take the form of so called Business Components.

In this training, participants will learn an integrated and holistic concept for a modern, distributed software architecture based on Jakarta EE (JEE). The workshop is aimed at practice and teaches the implementation of this architectural concept by the example of a proven reference implementation. However, the training content taught and the practical implementation are conceptually transferable to other object-oriented programming languages or application frameworks such as for example Spring (Boot).

Agenda

Clean DDD Architecture – Introduction

JEE application as a reference implementation

  •  Setting up the application (application server, database, etc.)
  •  Introduction to the business aspects and data model of the application
  •  Multi tier architecture and use of JEE platform
  •  Overview of the target architecture using the practical case study

Domain-Driven Design (DDD according to E. Evans)

  •  DDD basic concepts
  •  Decomposition of the Domain into Bounded Contexts (horizontal vs. vertical slices)
  •  Implementation of Building Blocks (entity, factory, repository, etc.)

Clean Architecture (according to R. C. Martin)

  •  Clean Architecture as a consolidated approach (Ports & Adapters, Onion Architecture, etc.)
  •  Dependency Rule and Dependency Inversion
  •  Derivation of package structures

Business Components

  •  Concept of Component-Based Development (CBD)
  •  Business Components as DDD Bounded Contexts
  •  Business Components with internal Clean Architecture
  •  Deployment units and remoting technologies
  •  Derivation of project structures

Cross-cutting tasks and quality assurance

  •  Aspects of relational data storage (concurrency, tenants, auditing, etc.)
  •  Cross-cutting concerns (transactions, exceptions, message texts, etc.)
  •  Definition and monitoring of architecture rules with tools (ArchUnit)
  •  Test strategies for a Clean DDD Architecture (JUnit, injection container, etc.)

 

Teilnehmerkreis und Voraussetzungen

This course is aimed at experienced JEE developers and software architects who are interested in modern architectural approaches. Basic knowledge of the most important JEE technologies such as CDI, EJB, JPA, Bean Validation and JAX-RS is required.

Schulungstermine

14.10.–18.10.2024

Online
5 Tage
Rabatt ab 2 Personen
Plätze frei

2.680,00 €
Details

14.10.–18.10.2024

Berlin
5 Tage
Rabatt ab 2 Personen
Plätze frei

2.980,00 €
Details

14.10.–18.10.2024

Bielefeld
5 Tage
Rabatt ab 2 Personen
Plätze frei

2.980,00 €
Details

Diese Schulung bieten wir auch als maßgeschneiderte Firmenschulung an

GEDOPLAN erstellt für Sie auf Ihre Unternehmensziele zugeschnittene Firmenschulung.
Durch unser modulares Schulungssystem sind wir in der Lage, anhand Ihrer Angaben eine individuelle Schulung zu gestalten. Denn die optimale Weiterbildung Ihrer Mitarbeiter nach Ihren Vorgaben und Anforderungen stehen bei uns im Mittelpunkt.
Bei Interesse nehmen Sie bitte Kontakt, wir führen dann gerne mit Ihnen ein unverbindliches Gespräch

GEDOPLAN - Telefonkontakt

030 / 20 89 82 63 0

GEDOPLAN - E-Mail Kontakt

Tim.Neumann@GEDOPLAN.de

Weitere Schulungen

Vorträge & News zum Thema

News aus Schulung, Beratung & Softwareentwicklung

News aus Schulung, Beratung & Softwareentwicklung