Junior — Middle
Nesne yönelimli programlamada 'fabrika' deseninin çalışma prensibini ve amacını açıklayın.
sobes.tech yapay zeka
AI'dan gelen yanıt
«Fabrika» (Factory) deseni, oluşturulacak nesnenin belirli sınıfını belirtmeden nesneler oluşturmak için kullanılır. Ana amacı, nesne oluşturma mantığını kapsüllemek olup, böylece kodun genişletilmesini ve bakımını kolaylaştırır.
Çalışma prensibi:
- Müşteri, bir fabrika yöntemi veya sınıfına başvurur ve bu, bir arayüz veya temel sınıf nesnesi döner.
- Fabrika, hangi somut sınıfın oluşturulacağına karar verir ve detayları müşteriden gizler.
C# örneği:
// Ürün arayüzü
interface IAnimal {
void Speak();
}
// Somut ürünler
class Dog : IAnimal {
public void Speak() => Console.WriteLine("Hav");
}
class Cat : IAnimal {
public void Speak() => Console.WriteLine("Miyav");
}
// Fabrika
class AnimalFactory {
public static IAnimal CreateAnimal(string type) {
return type switch {
"dog" => new Dog(),
"cat" => new Cat(),
_ => throw new ArgumentException("Bilinmeyen hayvan türü")
};
}
}
// Kullanım
var animal = AnimalFactory.CreateAnimal("dog");
animal.Speak(); // "Hav" yazdırır
Bu yaklaşım, yeni nesne türlerinin eklenmesini, müşteri kodunu değiştirmeden kolaylaştırır.