Mentionsy Mentionsy
Better Software Design
Better Software Design

29. Domain Driven Design Essentials: Domain Service

11.01.2022 ·21 min 1 s · 8 rozdziałów

W ramach mini-serii Domain-Driven Design Essentials rozmawialiśmy do tej pory o wzorcu Value Object. Dziś z Kubą Pilimonem rozmawiamy o kolejnym wzorcu taktycznego DDD, a konkretnie o serwisie domenowym. A w rozmowie poruszamy dziś następujące tematy: - czym właściwie jest Domain Service? - jaki kod można w nim osadzić i jak to identyfikować? - pojawi się oczywiście kilka różnych przykładów.

Witamy i przedstawienie gościa

Mariusz witamy gościa Kuba, który był ostatnio w podksiecie w odcinku 16. Rozmowa zaczyna się od osobistych spraw Kuby.

0:32
Ośmiotysięczniki i legacy systems

Kuba opowiada o swoich doświadczeniach z legacy systemami, takimi jak ośmiotysięczniki i Nepal. Analiza problemów związanych z architekturą tych systemów i jej porównanie z problemami w kodzie i systemach w dzisiejszej praktyce.

2:17
Serwis domenowy - definicja i zastosowanie

Kuba wprowadza w temat serwisu domenowego, wyjaśnia jego definicję i powtarza, że jest to część kodu, która enkapsuluje logikę domenową, nie pasującą do istniejących agregatów.

2:04
Przykłady zastosowania serwisu domenowego

Kuba omawia testowanie serwisu domenowego, podkreślając, że jest to jednostkowy test, który może być łatwo przetestowany w pamięci operacyjnej. Przykłady zastosowania serwisu domenowego do konsolidacji pożyczek.

6:43
Zasada Pure Fabrication

Kuba wprowadza w zasadę Pure Fabrication, wyjaśniając, że to jest sztuczny byt, który nie istnieje w świecie rzeczywistym, ale pomaga w zredukowaniu wiązania między klasami i zwiększeniu kohezji.

1:28
Znajdowanie serwisu domenowego

Kuba omawia kryteria identyfikujące serwis domenowy, takie jak trudność z osadzeniem logiki w value objectie lub agregacie, brak stanu do zapisu w bazie danych. Przykłady zastosowania serwisu domenowego do konsolidacji pożyczek i agregowania informacji z różnych banków.

5:58
Emocje w programowaniu

Kuba opowiada o doświadczeniach związane z emocjami w programowaniu, takimi jak wkurzenie się z kodu, który nie pasuje do naszych oczekiwań. Analiza wpływu emocji na projektowanie i design kodu.

1:24
Podsumowanie i dalsze tematy

Kuba podsumowuje rozmowę i podaje dalsze tematy do omówienia, takie jak serwis aplikacyjny i implementacyjne wzorce, takie jak ENCIA, repozytorium i fabryka.

0:13

Rozdziały i streszczenia generowane automatycznie. Pełna transkrypcja nie jest publikowana — wyszukaj frazę, aby zobaczyć dopasowane fragmenty.