Recentemente la progettazione basata sul dominio ha attirato la mia attenzione e, mentre pensavo a come questo approccio poteva aiutarci, ho trovato il seguente problema.
Nel DDD l'approccio comune è quello di recuperare entità (o meglio radici aggregate) da un repository che funge da raccolta in memoria di queste entità. Dopo che queste entità sono state recuperate, possono essere aggiornate o eliminate dall'utente, tuttavia dopo il recupero vengono sostanzialmente disconnesse dall'origine dati e si deve informare attivamente il repository per aggiornare l'origine dati e renderla coerente con la nostra in-memory rappresentazione.
Qual è l'approccio DDD al recupero di entità che dovrebbero rimanere connesse all'origine dati? Ad esempio, nella nostra situazione recuperiamo una serie di sensori che hanno una misurazione specifica durante il recupero. Nel tempo, questi valori di misurazione potrebbero cambiare e la nostra logica aziendale nel modello di dominio dovrebbe rispondere correttamente a questi cambiamenti. Ad esempio, gli eventi di dominio possono essere generati se un valore di sensore supera una soglia predefinita.
Tuttavia, utilizzando l'approccio del repository, questi valori del sensore sono solo istantanee e vengono disconnessi dall'origine dati. Qualcuno di voi ha un'idea su come risolvere questo problema seguendo l'approccio DDD?