Sobes.tech
Junior — Middle

Programlamada fabrika yöntemi desenleri ve kullanımları nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Fabrika Yöntemi (Factory Method) deseni, oluşturulacak nesnenin belirli bir sınıfını belirtmeden nesneler oluşturmak için kullanılır. Bu, nesne oluşturma arayüzünü tanımlar, ancak hangi sınıfın örnekleneceğine alt sınıfların karar vermesine izin verir.

Flutter'da (ve genel programlamada) fabrika yöntemleri şu amaçlar için kullanılır:

  • Nesne oluşturma mantığını kapsüllemek, özellikle oluşturma karmaşıksa veya koşullara bağlıysa.
  • Kullanılan kodu değiştirmeden oluşturulan nesnenin belirli sınıfını değiştirmeye izin vermek.
  • Kodun test edilmesini ve genişletilebilirliğini kolaylaştırmak.

Dart/Flutter örneği:

abstract class Button {
  void render();
}

class AndroidButton implements Button {
  @override
  void render() => print('Android düğmesi render ediliyor');
}

class IOSButton implements Button {
  @override
  void render() => print('iOS düğmesi render ediliyor');
}

class Dialog {
  Button createButton(String platform) {
    if (platform == 'Android') {
      return AndroidButton();
    } else if (platform == 'iOS') {
      return IOSButton();
    } else {
      throw Exception('Bilinmeyen platform');
    }
  }

  void render() {
    Button button = createButton('Android');
    button.render();
  }
}

Burada, createButton metodu, platforma bağlı olarak farklı nesneler oluşturan fabrika metodudur.