Junior — Middle
Leg uit hoe het 'fabriek'-patroon werkt en wat het doel ervan is in objectgeoriënteerd programmeren.
sobes.tech AI
Antwoord van AI
Het «Factory»-patroon wordt gebruikt om objecten te maken zonder de specifieke klasse van het te maken object aan te geven. Het hoofddoel is het encapsuleren van de logica voor het maken van objecten, wat de uitbreiding en het onderhoud van de code vereenvoudigt.
Werking:
- De klant maakt gebruik van een fabrieksmethode of -klasse die een object van een interface of basisklasse retourneert.
- De fabriek bepaalt welke concrete klasse wordt gemaakt, en verbergt de details voor de klant.
Voorbeeld in C#:
// Productinterface
interface IAnimal {
void Speak();
}
// Concrete producten
class Dog : IAnimal {
public void Speak() => Console.WriteLine("Woef");
}
class Cat : IAnimal {
public void Speak() => Console.WriteLine("Miauw");
}
// Fabriek
class AnimalFactory {
public static IAnimal CreateAnimal(string type) {
return type switch {
"dog" => new Dog(),
"cat" => new Cat(),
_ => throw new ArgumentException("Onbekend diertype")
};
}
}
// Gebruik
var animal = AnimalFactory.CreateAnimal("dog");
animal.Speak(); // Drukt "Woef" af
Deze aanpak maakt het toevoegen van nieuwe objecttypes eenvoudiger zonder de clientcode te wijzigen.