| Tytuł: | Zaawansowane techniki implementacji DDD - Java, .NET, TypeScript |
| Kod: | ddd-workshop-impl |
| Kategoria: | Warsztaty eksperckie DDD |
| Forma: | 20% wykłady/80% warsztaty |
| Czas trwania: | 3 dni |
| Odbiorcy: | architekci, developerzy |
| Zapisy: |
Indywidualne zamówienie i dopasowanie dla grupy. |
| Logistyka: |
W siedzibie klienta lub w innym dowolnym miejscu. |
Intensywne, praktyczne szkolenie prowadzone przez uznanego eksperta w dziedzinie Domain-driven Design i Event Sourcing.
Szkolenie skierowane jest do programistów, architektów i liderów technicznych, którzy chcą pogłębić swoje umiejętności w przejściu od modelowania biznesowego do implementacji solidnej, skalowalnej architektury aplikacji.
Szkolenie prowadzone jest w jednym z trzech języków programowania do wyboru: Java, C# lub TypeScript, zależnie od preferencji grupy uczestników.
Wyróżniki szkolenia
- Zrozumienie najlepszych praktyk i najczęstszych błędów w implementacji Agregatów,
- Praktyczne zastosowanie zarówno podstawowych (ORM) jak i zaawansowanych techniki spójności danych oraz wzorce integracyjne (outbox, inbox, itd.)
- Zrozumienie kiedy nie, a kiedy używać architektur typu Hexagonal/Ports and Adapters, CQRS/Vertical Slices, Event Driven, Event Sourcing
Program Szkolenia
Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.-
Od modelu domenowego do architektury aplikacji- Techniki przejścia od modelu biznesowego/domenowego do architektury oraz struktur w kodzie.
- Zastosowanie technik typu EventStorming Process/Design level, model C4, Mapy Kontekstów do opracowania projektu architektury.
- Dobór stylów architektonicznych do skali problemu, czyli architektura wielowarstwowa kontra CRUD, podział pionowy.
- Odzwierciedlenie podziału biznesowego w podziale architektury.
- Techniki przejścia od modelu biznesowego/domenowego do architektury oraz struktur w kodzie.
-
Logika biznesowa i spójność danych- Implementacja wzorców typu Agregat, Decider, Value Object, Entity do zapewnienia spójności procesu biznesowego.
- Techniczna implementacja tranzakcyjności zapisu danych. Omówienie różnic między podejściami typu Repozytoria, ORM, Event Sourcing, bazy dokumentowe, itd.
- Serwisy domenowe, Specyfikacje i inne techniki w zapewnieniu spójności danych między wieloma operacjami biznesowymi.
- Implementacja pełnego przepływu zarówno w architekturze wielowarstwowej, CQRS i innych. Zrozumienie różnic między nimi, kiedy warto, a kiedy nie.
- Testowanie jednostkowe i integracyjne procesów biznesowych.
- Implementacja wzorców typu Agregat, Decider, Value Object, Entity do zapewnienia spójności procesu biznesowego.
-
Orkiestracja procesów biznesowych- Praktyczna implementacja wielokrokowych procesów biznesowych. Zrozumienie różnic między Sagą, Process Managerem i Choreografią.
- API wewnętrzne, kontra API zewnętrzne. Dlaczego ten podział jest kluczowy do zarządzania coupling.
- Różnice między podziałem logicznym, architektonicznym i technicznym, czyli Architektury Oparte na Zdarzeniach, Messaging, w praktyce.
- Zrozumienie róznic między komendą, zdarzeniem i stanem.
- Zapewnienie gwarancji spójności, kolejność zdarzeń, idempotentność i inne wyzwania przy obsłudze procesów biznesowych.
- Użycie i rodzaje implementacji wzorców integracyjnych: Outbox, Inbox, Request/Reply.
- Zrozumienie driverów architektonicznych przy doborze technologii obsługi wiadomości. Zrozumienie różnic między technologiami typu Kafka, RabbitMQ, kolejki Cloud Native.
- Testowanie procesów biznesowych.
- Praktyczna implementacja wielokrokowych procesów biznesowych. Zrozumienie różnic między Sagą, Process Managerem i Choreografią.
-
DDD na produkcji- Wersjonowanie, ewolucja kontraktów.
- Dokumentacja implementacji i jej ewolucja w czasie.
- Zapewnienie obserwowalności i śledzenie procesów biznesowych do wykrywania i analizy błędów. Implementacja i analizowanie przy pomocy Open Telemetry.
- Raporty, modele odczytu, w praktyce. Zrozumienie czy Eventual Consistency jest takie straszne, techniki na jego obejście.
- Dobór narzędzi: framework kontra "zrób to sam". Jak dobrać narzędzia pod projekt i zespół.
- Zaawansowane techniki testowania automatycznego. Kiedy, gdzie i w jaki sposób.
- Wersjonowanie, ewolucja kontraktów.
Pobierz program w formacie PDF
Trenerzy
Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.