Junior — Middle
Erklären Sie das Funktionsprinzip und den Zweck des 'Fabrik'-Musters in der objektorientierten Programmierung.
sobes.tech KI
Antwort von AI
Das Muster «Fabrik» (Factory) wird verwendet, um Objekte zu erstellen, ohne die konkrete Klasse des zu erstellenden Objekts anzugeben. Seine Hauptaufgabe ist die Kapselung der Logik zur Objekterstellung, was die Erweiterung und Wartung des Codes erleichtert.
Funktionsprinzip:
- Der Kunde greift auf eine Fabrikmethode oder -klasse zu, die ein Interface- oder Basisklassenobjekt zurückgibt.
- Die Fabrik entscheidet, welche konkrete Klasse erstellt wird, und verbirgt die Details vor dem Kunden.
Beispiel in C#:
// Produkt-Interface
interface IAnimal {
void Speak();
}
// Konkrete Produkte
class Dog : IAnimal {
public void Speak() => Console.WriteLine("Wau");
}
class Cat : IAnimal {
public void Speak() => Console.WriteLine("Miau");
}
// Fabrik
class AnimalFactory {
public static IAnimal CreateAnimal(string type) {
return type switch {
"dog" => new Dog(),
"cat" => new Cat(),
_ => throw new ArgumentException("Unbekannter Tierart")
};
}
}
// Verwendung
var animal = AnimalFactory.CreateAnimal("dog");
animal.Speak(); // Gibt "Wau" aus
Dieser Ansatz erleichtert die Hinzufügung neuer Objekttypen, ohne den Client-Code zu ändern.