Builder-kaavio rakentaa monimutkaisia objekteja askel kerrallaan, erottaen konstruktion esityksestä. Se on erityisen hyödyllinen objekteille, joilla on monia parametreja tai valinnaisia osia, tuottaen luettavaa, joustavaa objektien konstruktiota hankalien konstruktoreiden sijaan.
Ongelma, jonka Builder ratkaisee
Objects with MANY parameters (especially optional ones) lead to problems:
✗ huge constructors: new Pizza('large', true, false, true, 'thin', false, ...) →
unreadable (which boolean is what?); hard to use; error-prone
✗ many constructor overloads (telescoping constructors) → messy
→ Builder provides a clean, readable, step-by-step way to construct such objects.
