Junior — Middle
Builder deseninin çalışma prensibini ve ana kullanım alanını açıklayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Yapı "Builder" deseni, karmaşık nesnelerin aşama aşama oluşturulmasında kullanılır ve inşa sürecini temsilinden ayırır. Bu, aynı inşa sürecini kullanarak nesnenin farklı varyantlarını oluşturmayı sağlar.
Ana fikir, nesne oluşturma parametrelerini ve adımlarını toplayan ayrı bir sınıf (builder) olması ve ardından hazır bir örneği döndürmesidir.
Uygulama:
- Nesne birçok parametreye sahipse, özellikle isteğe bağlı olanlar.
- Farklı yapılandırmalara sahip nesneler oluşturulması gerektiğinde.
Swift'te örnek:
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
}
}
// Kullanım:
// let car = CarBuilder().setColor("Red").setSeats(4).setEngine("V8").build()