Sobes.tech
Junior — Middle

Ako implementovať kompozíciu objektov v rámci metódy __init__?

sobes.tech AI

Odpoveď od AI

V iOS (Swift) je kompozícia objektov vnútri metódy init realizovaná vytvorením a inicializáciou vnorených objektov ako vlastností triedy. V konštruktore init vytvoríte inštancie potrebných komponentov a priradíte ich ich vlastnostiam.

Príklad:

class Engine {
    var horsepower: Int
    init(horsepower: Int) {
        self.horsepower = horsepower
    }
}

class Car {
    let engine: Engine
    let model: String

    init(model: String, horsepower: Int) {
        self.model = model
        self.engine = Engine(horsepower: horsepower) // kompozícia objektu Engine vnútri Car
    }
}

let myCar = Car(model: "Tesla", horsepower: 500)

V tomto príklade obsahuje objekt Car vo vnútri objekt Engine, ktorý je vytvorený a inicializovaný v konštruktore init. Ide o kompozíciu objektov.