Master 1.1

Projects

Markdown und HTML wurden synchron erzeugt. Die Beschreibungen sind direkt in den Projektordnern integriert.

V01 Modular Baseline: Projektbeschreibung und Ablauf

Grundlegender Maven-Multi-Module-Schnitt: Domain, Application, Adapter und App werden bewusst getrennt.

Moduluebersicht

Modul Typ Was es tut Wichtige Muster
order-domain Domain-Modul Enthaelt das einfache Bestellmodell mit Wertobjekten, Status und grundlegenden Invarianten. Aggregate Root; Value Object; Entity
order-application Use-Case-Modul Definiert den einfachen Bestell-Use-Case und die Ports, ueber die Domain und Adapter verbunden werden. Application Service; Command Pattern; Repository Port
order-adapter-memory Outbound Adapter Stellt eine einfache In-Memory-Persistenz bereit, damit die Modulgrenzen ohne echte Datenbank sichtbar werden. Adapter Pattern; Repository Adapter; Fake Adapter for Learning
order-app Bootstrap / Inbound Adapter Startet die einfache Anwendung und stellt einen REST-nahen Einstieg in den Bestellprozess dar. Controller; Composition Root; Dependency Injection

Ablauf der Version

  1. order-domain - Application erzeugt eine Order ueber fachliche Methoden. Order prueft Invarianten und wechselt den Status. Repository-Port speichert das Aggregate ueber einen Adapter.
  2. order-application - Controller erstellt ein PlaceOrderCommand. Use Case erzeugt Domain-Objekte und nutzt PricingPolicy. OrderRepository-Port wird vom Memory Adapter umgesetzt.
  3. order-adapter-memory - Use Case ruft OrderRepository.save. InMemoryOrderRepository speichert die Order im Speicher. Tests oder Demo-Aufrufe koennen ohne Datenbank laufen.
  4. order-app - HTTP/Controller-Aufruf kommt herein. Controller baut ein Command. Use Case verarbeitet und speichert ueber den Adapter.

Lese-Reihenfolge

  1. Root-README.md der Version lesen.
  2. PROJECTS.md lesen.
  3. Modul-READMEs nacheinander oeffnen.
  4. Java-Code mit // PATTERN:-Kommentaren pruefen.
  5. Zentrale Pattern-Doku unter ../../docs/design-patterns.md vergleichen.
⌂ Cockpit