Branch by Abstraction
Introdurre un'astrazione comune, collegare vecchia e nuova implementazione e spostare gradualmente il traffico tramite configurazione o feature flag.
Il problema
Sostituire una dipendenza in un unico passo richiede una branch lunga e rende difficile il rollback.
Il pattern
Introdurre un'astrazione comune, collegare vecchia e nuova implementazione e spostare gradualmente il traffico tramite configurazione o feature flag.
Come funziona
Le due implementazioni convivono dietro la stessa porta. Dopo la stabilizzazione la vecchia viene rimossa insieme al flag.
Esempio sanitario
Benefici
- Migrazione progressiva
- Rollback rapido
- Branch brevi
Trade-off
- Coesistenza temporanea
- Serve evitare divergenza di comportamento
Quando usarlo
Per sostituire componenti interni o provider con rischio controllato.
Quando evitarlo
Quando le due implementazioni non possono essere rese semanticamente compatibili.
Pattern correlati
RIFERIMENTI
Fonti e riferimenti
Capsule Informatiche · Materiale progettuale
Capsule Informatiche · Materiale progettuale
