Sobes.tech
Junior — Middle

Оё метавонед консепсия ва истифодаи усули фабрика дар намунаҳои тарҳрезӣро шарҳ диҳед?

sobes.tech AI

Ҷавоб аз AI

Фабричний метод (Factory Method) — це шаблон проектування, який визначає інтерфейс для створення об'єкта, але дозволяє підкласам вирішувати, який клас інстанціювати.

Це корисно, коли потрібно делегувати створення об'єктів підкласам, щоб не бути жорстко прив'язаним до конкретних класів.

Приклад на Swift:

protocol Product {
    func use()
}

class ConcreteProductA: Product {
    func use() {
        print("Використовуємо продукт A")
    }
}

class ConcreteProductB: Product {
    func use() {
        print("Використовуємо продукт B")
    }
}

protocol Creator {
    func factoryMethod() -> Product
}

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

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

// Використання
let creator: Creator = CreatorA()
let product = creator.factoryMethod()
product.use()  // Виведе: Використовуємо продукт A

Таким чином, фабричний метод дозволяє створювати об'єкти без вказівки конкретного класу, що полегшує розширення та підтримку коду.