Builder pattern
Pattern della Gang of Four: costruire un oggetto complesso passo dopo passo tramite una classe builder separata, invece che con un costruttore da 15 argomenti.
La variante moderna è il builder fluente (Pizza.builder().size("large").cheese("mozz").build()). Dà il meglio quando i campi opzionali sono molti, i valori predefiniti restano invariati o l'oggetto deve essere immutabile. Rispetto all'anti-pattern del costruttore telescopico (cinque costruttori diversi con da 1 a 10 argomenti) è molto più pulito.
È uno standard in Java (@Builder di Lombok), Kotlin (argomenti con nome e valori predefiniti lo sostituiscono in parte), Rust (il typestate builder) e TypeScript. Molti «DSL di configurazione» sono builder travestiti.