Qual è il problema risolto da Domain Driven Design?
Capisco che Programmazione orientata agli oggetti ha portato e visto i problemi che ha affrontato e in che modo, e in quale aspetto / scenario, ha semplificato la vita di uno sviluppatore. Ma finora non sono riuscito a vedere il quadro generale di ciò che DDD ci porta. Di sicuro questo è dovuto al fatto che sto iniziando con DDD e forse è qualcosa che saprò alla fine (dopo aver lavorato con lui per alcuni anni). Ma se no ed è possibile riassumere il quadro generale in alcune frasi per favore condividili con me.
Quello che ho ottenuto finora:
DDD aiuta a definire un linguaggio comune per discutere ad esempio di un progetto software. Per capire cosa sta succedendo in un dominio, ad es. come funziona l'azienda, quali operazioni sono possibili e in quali condizioni. Quali dati devono essere memorizzati e come dovrebbero essere raggruppati.
Questo è il quadro generale? Penso che ci sia dell'altro ma non riesco ancora a vederlo.
Modifica
Esiste una domanda simile Che cos'è lo sviluppo guidato dal dominio in termini pratici? . Tuttavia questa domanda ha un focus diverso quando si richiede che cos'è DDD mentre vorrei imparare a quale problema DDD è la soluzione . Una data risposta è davvero eccellente e include anche le possibili risposte alla mia domanda. Non posso giudicare se questa risposta include la risposta completa alla mia domanda, ma in questo momento la mia intuizione mi dice che non è così.