Sobes.tech
Junior — Middle

Vai jūs varat izskaidrot 'Builder' modeļa darbības principu un tā galveno pielietojumu?

sobes.tech AI

Atbilde no AI

Modelis "Builder" tiek izmantots, lai pakāpeniski izveidotu sarežītus objektus, atdalot būvniecības procesu no prezentācijas. Tas ļauj izmantot to pašu būvniecības procesu, lai izveidotu dažādas objekta variācijas.

Galvenā ideja ir būt atsevišķai klasei (būvētājam), kas apkopo parametrus un soļus objekta izveidei, un pēc tam atgriež gatavu eksemplāru.

Pielietojums:

  • Kad objekts ir ar daudz parametriem, īpaši izvēles.
  • Kad nepieciešams izveidot objektus ar dažādām konfigurācijām.

Piemērs 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
    }
}

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