Jestem nieco zdezorientowany co do pochodzenia podmiotów w środowisku, które korzysta z CQRS & Event Sourcing. Aby moje pytanie było jasne, przyjrzyjmy się dobrze znanemu przykładowi sklepu internetowego:DDD, CQRS, Sourcing wydarzeń: skąd pochodzą podmioty?
Możesz modelować zamówienia jako agregat root. Zamówienie przyjmuje linie zamówienia, które same są zdefiniowane przez produkt i ilość.
Ponieważ linia zamówienia jest jednostką, która jest tworzona podczas samego procesu zamówienia, nadal istnieje pojęcie produktu, który również wydaje się być podmiotem. Ale skąd pochodzi produkt, a nawet katalog produktów? Moim zdaniem nie ma czegoś takiego jak agregat produktu w ograniczonym kontekście zamówienia. W jaki sposób kontekst zamówienia będzie wiedział o jednostkach produktu? Czy są utrzymywane w innym ograniczonym kontekście i jakoś zmaterializowały się w czytanym magazynie kontekstu zlecenia?
Należy dodać, że ostatni punkt końcowy powinien być wykonany za pośrednictwem usługi domeny, ponieważ tłumaczenie koszy zakupów na zamówienia jest wyraźnie pojęciem domeny. –