Anti-Corruption Layer (ACL)
Inserire un layer di traduzione tra il nuovo bounded context e il legacy, mantenendo il nuovo linguaggio di dominio pulito.
Il problema
Il modello legacy contiene nomenclature, codici e semantiche che contaminerebbero il nuovo dominio se venissero riutilizzate direttamente.
Il pattern
Inserire un layer di traduzione tra il nuovo bounded context e il legacy, mantenendo il nuovo linguaggio di dominio pulito.
Come funziona
L'ACL traduce payload, codici, errori e concetti; può essere implementata come adapter, facade o servizio di integrazione. Deve avere test di mapping molto espliciti.
Esempio sanitario
Benefici
- Protegge il nuovo modello
- Concentra mapping legacy
- Facilita sostituzione futura
Trade-off
- Layer aggiuntivo
- Mapping complessi possono nascondere ambiguità
Quando usarlo
Quando si integra un nuovo bounded context con un modello legacy incompatibile.
Quando evitarlo
Quando i due modelli sono già semanticamente equivalenti.
Pattern correlati
RIFERIMENTI
Fonti e riferimenti
Capsule Informatiche · Materiale progettuale
Capsule Informatiche · Materiale progettuale
Materiale di studio
