Lavoro su un'applicazione back-end che espone una API REST e io (prova a) uso Domain Driven Design nel mio progetto.Le classi di infrastruttura API possono far parte del dominio in DDD?
L'API REST funziona su un set fisso di classi di dominio. Per ogni radice aggregata del dominio esiste un endpoint REST separato. Tuttavia, nonostante tutti gli sforzi, ci sono casi in cui nuove classi, non derivanti dalle classi di dominio (classi infrastruttura) emergono, ad esempio:
- una classe di partecipazione stati delle operazioni batch
[{"id": 1, "status": "success"},{"id": 2, "status": "failure", "message": "detailed message"}]
- una classe con le colonne scelto dall'utente
[{"column": "id", "order": 1}, {"column":"created", "order": 2 }]
Ora due opzioni:
- E 'ok per avere l'API REST esporre le classi che non fanno parte della il dominio?
- o queste classi dovrebbero diventare parte del dominio?
Penso che sia del tutto normale esporre contratti specifici per il livello. Ad esempio, le DTO sono generalmente definite nel livello applicazione ... – plalx