Cześć,
zacząłem pisać dość proste API restowe do tworzenia rezerwacji, co by ułatwić pracę rodzicom, którzy worda uznają najlepsze narzędzie do wszystkiego. I tak pisząc wpadłem w pętlę zastanawiania się, jak ja to właściciwe chce napisać.
Od razu na starcie wytłumaczę, że rozumiem, że DDD i Rest to dwa odrębne, niezwiązane ze sobą pojęcia. Ale jednak... ostatnio trochę uległem modzie Domejn Driven Dizajn i dość szybko zaczęło mnie to męczyć - do małej aplikacji wydaje się być przerostem formy nad treścią. Postanowiłem więc olać DDD i doszedłem do wniosku, że w sumie to nie wiem, jakie są inne, dobre alternatywy. Przeglądając różne tutoriale nie doszedłem do żadnych mądrych wniosków - jest albo DDD, albo mapowanie prosto z DTOsa na encje.
Chodzi mi o konkrety. Powiedzmy, że postuję jakąś rezerwację z fronta, controller mapuje sobie DTOsa... i tu pytanie - na co? Czasami chciałbym przed zapisem czy updatem do bazy zrobić kilka walidacji, policzyć jakieś koszty, wysłać jakieś powiadomienia, coś tam wygenerować itp, itd., a czasami po prostu zapisać "as is". Jak robicie takie rzeczy? Jakieś dodatkowe mapowanie / model pomiędzy controllerami a modelem bazy? Czy może operować bezpośrednio na encjach?