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()