Junior — Middle
Puoi spiegare il concetto e l'applicazione del metodo di fabbrica nei pattern di progettazione?
sobes.tech AI
Risposta dell'AI
Il pattern Factory Method è un pattern di progettazione che definisce un'interfaccia per creare un oggetto, ma permette alle sottoclassi di decidere quale classe istanziare.
Questo è utile quando si desidera delegare la creazione di oggetti alle sottoclassi, per non essere strettamente legati a classi specifiche.
Esempio in Swift:
protocol Product {
func use()
}
class ConcreteProductA: Product {
func use() {
print("Utilizzo del prodotto A")
}
}
class ConcreteProductB: Product {
func use() {
print("Utilizzo del prodotto B")
}
}
protocol Creator {
func factoryMethod() -> Product
}
class CreatorA: Creator {
func factoryMethod() -> Product {
return ConcreteProductA()
}
}
class CreatorB: Creator {
func factoryMethod() -> Product {
return ConcreteProductB()
}
}
// Uso
let creator: Creator = CreatorA()
let product = creator.factoryMethod()
product.use() // Stampa: Utilizzo del prodotto A
In questo modo, il metodo di fabbrica consente di creare oggetti senza specificare la classe concreta, facilitando l'estensione e la manutenzione del codice.