Adresaci Szkolenia:

Szkolenie skierowane jest do programistów, projektantów i architektów, którzy pragną poznać praktycznie i przećwiczyć projektowanie złożonych modeli domen z wykorzystaniem Domain Driven Design.

Cel szkolenia:

Cel szkolenia obejmuje poznanie i opanowanie następujących zagadnień związanych z DDD:

  • Techniki modelowania i pracy w zespole DDD
  • Techniki i wzorce taktyczne DDD
  • Techniki i wzorce strategiczne DDD
  • Techniki refaktoryzacji i wykorzystania wzorców projektowych
  • Architektura w DDD i wzorce architektoniczne

Wymagania:

Uczestnik szkolenia powinien posiadać doświadczenie w programowaniu obiektowym, a także podstawową znajomość zagadnień związanych z analizą i projektowaniem, w tym znajomość UML.

Parametry szkolenia:

3*8 godzin (3*7 godzin netto) wykładów i warsztatów (z wyraźną przewagą warsztatów - 80%). Podczas warsztatów uczestnicy projektują system oraz jego wybrane moduły w praktyce poznając i dyskutując z trenerem koncepcje związane z DDD

Program szkolenia

  1. Główne założenia DDD
    1. Stosowalność DDD
    2. Proces i role w DDD
    3. Wspólny język
    4. Architektura a DDD
  2. Techniki modelowania
    1. Efektywne modelowanie
      1. Kruszenie wiedzy (Knowledge crunching)
      2. Ciągła nauka (Continuous Learning)
      3. Głęboki model (Deep models)
      4. Model-Driven Design
    2. Komunikacja i język
      1. Wspólny język (Ubiquitous Language)
      2. Prowadzenie sesji modelowania
      3. Techniki pracy w zespole
  3. Wzorce taktyczne DDD (Building Blocks)
    1. Izolacja domeny w architekturze
    2. Paradygmaty modelu obiektowego
    3. Asocjacje
    4. Encje
    5. Value objects
    6. Serwisy
    7. Moduły
    8. Agregaty
    9. Fabryki
    10. Repozytoria i modelowanie pod kątem relacyjnych baz danych
  4. Techniki ulepszania i refaktoryzacji
    1. Wzorce projektowe GoF w kontekście DDD
      1. Saga jako mediator i fasada
      2. Specyfikacja jako kompozyt (Composite)
      3. Dekorator polityk/strategii (Decorator)
      4. Stan dla agregatów (State)
      5. Łańcuch odpowiedzialności (Chain of Responsibility)
      6. Budowniczy (Builder)
    2. Wzorce projektowania gibkiego (Supple Design)
      1. Interfejsy intencyjne (Intention-Revealing Interfaces)
      2. Funkcje bez efektów ubocznych (Side-Effect-Free Functions)
      3. Asercje (Assertions)
      4. Kontury koncepcyjne (Conceptual Contours)
      5. Wolnostojące klasy (Standalone Classes)
      6. Domknięcia operacji (Closure of Operations)
      7. Projektowanie deklaratywne
  5. Wzorce strategiczne DDD
    1. Rodzaje domen (Core, Generic, Support) i techniki projektowania strategicznego domen
    2. Ustalanie granic i integracji: Bounded Context oraz Context Map, Shared Kernel, Anticorruption Layer, Open Host Service
    3. Praca międzyzespołowa: Customer/Supplier, Conformist, Separate Ways
  6. Architektura
    1. Architektura aplikacji a architektura systemu
    2. Projektowanie strategiczne
    3. Model dużej skali: Capability, Operations, Policy, Decision Support
    4. Wzorce architektoniczne
      1. Architektura warstwowa (Multilayered Architecture) z warstwawmi prezentacji, aplikacji, domeny i infrastruktury
      2. Architektura CqRS
      3. Architektura zdarzeniowa (Event-Driven Architecture)
      4. Architektura SOA

Pytania?

* Wymagane.


Konsultant on-line
Skorzystaj z usług naszego konsultanta on-line.
Naciśnij przycisk ‘Skorzystaj’ aby przejść do okienka czatu
Kontakt
ul. Nowogrodzka 62c
02-002 Warszawa
Telefon +48 22 2035600
Fax +48 22 2035601
Email