Che cos'è aggregate-design?
Esegui la revisione del codice, il supporto alla progettazione e il refactoring per gli aggregati in base alle regole di progettazione degli aggregati DDD. Guida in modo completo la definizione dei confini aggregati, la convalida degli invarianti, la progettazione immutabile, i riferimenti ID, l'eventuale coerenza e l'integrazione degli eventi del dominio seguendo le regole di Evans, le 4 regole di Vernon e la progettazione per contratto. Utilizza sempre questa abilità quando si verifica una delle seguenti condizioni: - Nuovo design, implementazione o refactoring di un aggregato (qualsiasi linguaggio) - Revisione del codice incentrata sul DDD di classi di entità o aggregati esistenti - Decidere i confini dell'aggregato ("A e B dovrebbero essere nello stesso aggregato?" "Questo aggregato è troppo grande?") - Progettazione di invarianti e confini di consistenza all'interno di un aggregato - Scelta dei modelli di collaborazione interaggregati (eventi del dominio, eventuale coerenza, modello Saga) - Refactoring del codice aggregato mutabile in un design immutabile - Rilevamento e correzione delle violazioni dell'incapsulamento come campi pubblici, riferimenti diretti, push/append Esempi di parole chiave: aggregato, Aggregato, confine aggregato, radice aggregata, AggregateRoot, progettazione di entità, implementazione DDD, Regole Vernon, Regole Evans, suddivisione aggregata, invarianti reali Fonte: j5ik2o/okite-ai.