Sobes.tech
Junior — Middle

Môžete vysvetliť koncept a použitie továrenskej metódy v návrhových vzorcoch?

sobes.tech AI

Odpoveď od AI

Fabrika metóda (Factory Method) je návrhový vzor, ktorý definuje rozhranie na vytváranie objektu, ale umožňuje podtriedam rozhodnúť, akú triedu inštancovať.

To je užitočné, keď chcete delegovať tvorbu objektov podtriedam, aby ste neboli pevne viazaní na konkrétne triedy.

Príklad v Swift:

protocol Product {
    func use()
}

class ConcreteProductA: Product {
    func use() {
        print("Použitie produktu A")
    }
}

class ConcreteProductB: Product {
    func use() {
        print("Použitie produktu B")
    }
}

protocol Creator {
    func factoryMethod() -> Product
}

class CreatorA: Creator {
    func factoryMethod() -> Product {
        return ConcreteProductA()
    }
}

class CreatorB: Creator {
    func factoryMethod() -> Product {
        return ConcreteProductB()
    }
}

// Použitie
let creator: Creator = CreatorA()
let product = creator.factoryMethod()
product.use()  // Výstup: Použitie produktu A

Týmto spôsobom umožňuje továreň metóda vytvárať objekty bez špecifikácie konkrétnej triedy, čo uľahčuje rozširovanie a údržbu kódu.