0Pricing
Dart Academy · Ders

Factory ve const Yapıcıları

Önbelleğe alma, alt tür döndürme veya derleme zamanı nesneleri oluşturma

Factory ve const Yapıcıları, CoddyKit'te ücretsiz bir Dart Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Dart Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Dart Academy kursu toplamda 4 dersten oluşur.

Fabrika Oluşturucusu Nedir

Bir fabrika oluşturucusu normal bir oluşturucuya benzer, ancak ne döndüreceğini siz denetlersiniz. Bu nedenle her seferinde yepyeni bir nesne oluşturmak zorunda değildir.

class Logger {
  factory Logger() => _shared;
}

fabrika Önbelleğe Alınmış Bir Nesne Döndürebilir

Her zaman yeni bir nesne oluşturmak yerine değer döndürdüğü için bir fabrika, önbelleğe alınmış bir örneği geri verebilir. Bu, tekil nesneler veya havuzlar için idealdir.

class Logger {
  static final _it = Logger._();
  Logger._();
  factory Logger() => _it;
}

fabrika Bir Alt Tür Döndürebilir

Bir fabrika, doğru türdeki herhangi bir nesneyi, bir alt sınıfı bile döndürebilir. Böylece somut sınıfı çalışma zamanında seçebilirsiniz.

factory Shape(String k) =>
    k == "box" ? Box() : Dot();

fabrika Döndürmek Zorundadır

Normal bir oluşturucunun aksine, fabrikanın bir örneği döndürmesi gereken bir gövdesi vardır; alanları doğrudan this. ile ayarlamaz.

factory User.fromJson(Map j) {
  return User(j["name"]);
}

Yaygın Bir Ayrıştırma Fabrikası

Fabrika deseni, eşlemeden nesne oluşturmak gibi ayrıştırma işlemlerinde çok işe yarar. fromJson kullanımı Dart ve Flutter'da her yerde görülür.

factory User.fromJson(Map<String, dynamic> j) =>
    User(j["name"]);

const Oluşturucusu Nedir

Bir const oluşturucusu, tüm alanları final olan ve önceden bilinen derleme zamanı sabit nesneleri oluşturmanızı sağlar.

class Point {
  final int x, y;
  const Point(this.x, this.y);
}

const Örnekleri Oluşturma

Dondurulmuş bir nesne oluşturmak için onu const anahtar sözcüğüyle çağırın. Eşit değerlere sahip iki const nesne aslında aynı örnektir.

const a = Point(1, 2);
const b = Point(1, 2);
print(identical(a, b)); // true

const Oluşturucuları İçin Kurallar

Her alan final olmalı ve oluşturucu gövdesi boş olmalıdır. Dart'ın nesneyi derleme zamanında dondurabilmesini sağlayan kurallar bunlardır.

class Color {
  final int v;
  const Color(this.v);
}

const Bellek Kazandırır

Aynı const nesneler tek bir paylaşılan örnekte standartlaştırılır; bu nedenle onları yeniden kullanmak bellekte ek maliyet oluşturmaz.

const reds = [Color(255), Color(255)];

fabrika ve const Karşılaştırması

Çalışma zamanında ne döndürüleceğine karar verdiğinizde fabrika kullanın; değişmez, derleme zamanı değerleri istediğinizde const kullanın.

Fikirleri Birleştirme

Bir sınıf, her türlü oluşturma ihtiyacını karşılamak için normal bir oluşturucu, ayrıştırma amacıyla bir fabrika ve sabit değerler için bir const oluşturucusu sunabilir.

Hızlı Kontrol

Fabrika oluşturucularıyla ilgili hızlı kontrol.

Özet: fabrika ve const

Fabrika oluşturucularının ne döndüreceklerini denetlediğini, const oluşturucularının ise paylaşılan ve değişmez derleme zamanı nesneleri oluşturduğunu öğrendiniz. Harika çalıştınız! 🎉

Sıkça Sorulan Sorular

“Factory ve const Yapıcıları” dersi ücretsiz mi?

Evet — “Factory ve const Yapıcıları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Dart Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Dart Academy kursu toplamda 4 dersten oluşur.

“Factory ve const Yapıcıları” dersinde ne öğreneceğim?

Önbelleğe alma, alt tür döndürme veya derleme zamanı nesneleri oluşturma Dart Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Dart Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Dart Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“Factory ve const Yapıcıları” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Dart Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Dart Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Varsayılan ve Parametreli Yapıcılar
  2. Açık Amaçlı Adlandırılmış Yapıcılar
  3. Başlatıcı Listeleri ve Yönlendirme
  4. Factory ve const Yapıcıları
← Dart Academy Sayfasına Dön