Sobes.tech
Junior — Middle

Kunt u het werkingsprincipe van het 'Builder'-patroon uitleggen en wat de belangrijkste toepassing ervan is?

sobes.tech AI

Antwoord van AI

Het patroon "Builder" wordt gebruikt om complexe objecten stapsgewijs te maken, waarbij het bouwproces wordt gescheiden van de presentatie. Dit maakt het mogelijk om verschillende varianten van het object te creëren met hetzelfde bouwproces.

Het belangrijkste idee is om een aparte klasse (builder) te hebben die de parameters en stappen voor het maken van het object verzamelt en vervolgens een klaar exemplaar retourneert.

Toepassingen:

  • Wanneer het object veel parameters heeft, vooral optioneel.
  • Wanneer objecten met verschillende configuraties moeten worden gemaakt.

Voorbeeld in Swift:

class Car {
    var color: String?
    var seats: Int?
    var engine: String?
}

class CarBuilder {
    private var car = Car()

    func setColor(_ color: String) -> CarBuilder {
        car.color = color
        return self
    }

    func setSeats(_ seats: Int) -> CarBuilder {
        car.seats = seats
        return self
    }

    func setEngine(_ engine: String) -> CarBuilder {
        car.engine = engine
        return self
    }

    func build() -> Car {
        return car
    }
}

// Gebruik:
// let car = CarBuilder().setColor("Red").setSeats(4).setEngine("V8").build()