Per le entità che hanno relazioni padre / figlio, è meglio avere un singolo servizio per genitori e figli o separarli?

3

L'ho visto fare in entrambi i modi, ma non ho mai visto nessuna discussione intorno a quale sia il modo più "giusto".

Supponiamo che tu abbia un'entità che abbia relazioni di figli con altre entità. I bambini non possono esistere senza il genitore, quindi ha più senso fare un servizio che gestisca il CRUD del genitore E dei figli, oppure mantenere i servizi allineati a una singola entità (quindi uno per il genitore, uno per [ciascuno dei] bambini)?

    
posta CodeChimp 18.04.2018 - 23:55
fonte

2 risposte

2

Se i bambini sono utili da soli (se il genitore è facoltativo o può essere ignorato per alcune operazioni), allora dovrebbero ottenere il proprio servizio.

Se la separazione serve solo a fornire una raccolta nel genitore, probabilmente no.

    
risposta data 19.04.2018 - 00:46
fonte
0

Devi solo scrivere un codice di esempio.

Blog blog = new Blog()

blog.addPost(new Blog post())

blogService.save(blog)

// Do you expect the posts to exist in the DB at this line?

Se rispondi "sì", salva genitore e figli in un unico servizio. Altrimenti dividili.

Pensando a come verrà utilizzato il codice e a come gli altri programmatori interpreteranno il codice ti daranno chiarezza.

Il Principal of Least Surprise è tuo amico qui.

    
risposta data 19.04.2018 - 00:26
fonte

Leggi altre domande sui tag