Vedo questo termine molto nel contesto dell'architettura software ("modello di dominio", "progettazione guidata dal dominio" ecc.). L'ho cercato su Google, ma ho tonnellate di definizioni diverse. Quindi cos'è davvero?
Dove tracciamo il confine tra delega e incapsulamento della logica aziendale? Mi sembra che più deleghiamo, più diventiamo anemici . Tuttavia, la delegazione promuove anche il riutilizzo e il principio DRY. Quindi, cosa è appropriato delegare e cosa dovrebbe rimanere nei nostri modelli di dominio? Prendi le seguenti preoccupazioni come …
Lavoro per un'azienda per la quale il dominio è davvero difficile da capire perché è un'alta tecnologia in elettronica, ma questo è applicabile a qualsiasi sviluppo software in un dominio complesso. L'applicazione su cui lavoro visualizza molte informazioni, grafici e metriche che sono difficili da capire senza esperienza nel dominio. …
Sto lavorando a un progetto in cui stiamo cercando di applicare sia la progettazione guidata dal dominio sia il REST a un'architettura orientata ai servizi. Non ci preoccupiamo del 100% di conformità REST; probabilmente sarebbe meglio dire che stiamo cercando di costruire API HTTP orientate alle risorse (~ Livello 2 …
Quali argomenti qualcuno dovrebbe prendere in considerazione quando si progetta un nuovo sistema e deve memorizzare il nome di una persona come un campo o separatamente come nome / cognome? Pro per singolo campo: Interfaccia utente più semplice Nessuna ambiguità quando si cerca di inserire il nome di una persona, …
Questo post riguarda un evento in rapida evoluzione. Sto modellando un database che dovrebbe essere usato come requisito generico non funzionale per tutti i servizi della società di avvio, come persone, utenti, servizi e dati commerciali come coupon, pacchetti di firme, ecc. Sto pensando al modello di genere . In …
Di recente ho letto molti articoli che descrivono l'ossessione primitiva come un odore di codice. Ci sono due vantaggi nell'evitare l'ossessione primitiva: Rende il modello di dominio più esplicito. Ad esempio, posso parlare con un analista aziendale di un codice postale anziché di una stringa che contiene un codice postale. …
Supponiamo di avere un sistema di registrazione delle attività, quando un'attività viene registrata, l'utente specifica una categoria e l'attività passa automaticamente allo stato "Eccezionale". Supponiamo in questo caso che Categoria e Stato debbano essere implementati come entità. Normalmente farei questo: Livello applicazione: public class TaskService { //... public void Add(Guid …
Ho letto di Domain Driven Design per quasi due anni e ho introdotto con cautela alcuni concetti nel mio lavoro quotidiano o almeno facendo piani su come le cose che faccio regolarmente potrebbero essere fatte all'interno di un Domain Driven Design. Una conclusione a cui sto iniziando a giungere in …
Sto studiando in modo pulito e, di conseguenza, sto ripensando in modo abbastanza drammatico il modo in cui progetto e scrivo software. La cosa con cui sto ancora lottando, tuttavia, è per le regole di business come "sul salvataggio degli aggiornamenti di un elemento, prima carica tutto l'elenco degli elementi …
Persistenza L'ignoranza è un'applicazione del principio della singola responsabilità, che in pratica significa che gli oggetti di dominio ( DO ) non dovrebbero contenere codice relativo alla persistenza, ma dovrebbero contenere solo la logica del dominio. a) Presumo che ciò significhi che il codice che contatta i livelli inferiori (ovvero …
Mi sto immergendo nei concetti di Domain-Driven Design (DDD) e ho trovato alcuni principi strani, soprattutto per quanto riguarda l'isolamento del dominio e il modello di persistenza. Ecco la mia comprensione di base: Un servizio a livello di applicazione (che fornisce un set di funzionalità) richiede oggetti di dominio da …
Nella nostra logica aziendale abbiamo occasionalmente metodi definiti in questo modo: User.ResetCourse(Course courseToReset) Il problema è che sia l'utente che il corso sono oggetti proxy Entity Framework. Ciò significa che quando colpiamo le proprietà di navigazione su Utente o Corso, può causare un enorme successo al database perché quegli oggetti …
Breve formato della domanda È nelle migliori pratiche di DDD e OOP iniettare servizi nelle chiamate al metodo dell'entità? Esempio di formato lungo Supponiamo di avere il classico caso Order-LineItems in DDD, in cui abbiamo un'entità dominio denominata un ordine, che funge anche da radice aggregata e che l'entità è …
Stai costruendo un sistema che tiene traccia delle aziende. Quelle aziende hanno contatti. Questi contatti sono spesso specialisti che rispondono solo a determinati tipi di domande, come fatturazione / pagamento, vendite, ordini e assistenza clienti. Utilizzando Domain Driven Design e un'architettura di cipolla, ho modellato questo con i seguenti tipi: …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.