Junior — Middle
Dizayn shablonlarida fabrik metodining konseptsiyasi va qo'llanilishini tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Fabrika usul (Factory Method) — bu dizayn shabloni bo‘lib, u ob'ektni yaratish uchun interfeysni belgilaydi, ammo subklasslarga qaysi klassni instansiyalashni hal qilish imkonini beradi.
Bu, ob'ektlarni yaratishni subklasslarga topshirish kerak bo‘lganda, aniq klasslarga qattiq bog‘lanishni oldini olish uchun foydalidir.
Swiftda misol:
protocol Product {
func use()
}
class ConcreteProductA: Product {
func use() {
print("A mahsulotidan foydalanilmoqda")
}
}
class ConcreteProductB: Product {
func use() {
print("B mahsulotidan foydalanilmoqda")
}
}
protocol Creator {
func factoryMethod() -> Product
}
class CreatorA: Creator {
func factoryMethod() -> Product {
return ConcreteProductA()
}
}
class CreatorB: Creator {
func factoryMethod() -> Product {
return ConcreteProductB()
}
}
// Foydalanish
let creator: Creator = CreatorA()
let product = creator.factoryMethod()
product.use() // Chiqish: A mahsulotidan foydalanilmoqda
Shu tarzda, fabrik metod ob'ektlarni aniq klassni ko‘rsatmasdan yaratishga imkon beradi, bu esa kodni kengaytirish va qo‘llab-quvvatlashni osonlashtiradi.