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

ამ გზით, ფაბრიკის მეთოდი საშუალებას აძლევს შექმნათ ობიექტები კონკრეტული კლასი მითითების გარეშე, რაც ამარტივებს კოდის გაფართოებას და შენარჩუნებას.