Sobes.tech
Middle

Flutter'da sabit yapıcılar hakkında bilgi verin.

sobes.tech yapay zeka

AI'dan gelen yanıt

Sabit yapıcı, derleyicinin derleme sırasında hesaplayıp tekrar kullanabileceği bir nesne oluşturmasına olanak tanır. Bu, performansı artırır ve bellek kullanımını azaltır.

Ana özellikler:

  • const anahtar kelimesi ile işaretlenmiştir.
  • Bu yapıcıyla tanımlanan sınıfın tüm alanları final olmalıdır.
  • Yapıcıya ait tüm argümanlar da sabit olmalı veya varsayılan sabit değerler içermelidir.
  • Bu yapıcıyla bir örnek oluştururken const anahtar kelimesi kullanılır.

Örnek:

class Point {
  final double x;
  final double y;

  const Point(this.x, this.y); // Sabit yapıcı
}

void main() {
  // Bu iki nesne bellek içinde aynı örneği temsil edecektir
  const p1 = Point(1.0, 2.0);
  const p2 = Point(1.0, 2.0);

  // Bu nesne yeni bir örnektir
  final p3 = Point(1.0, 2.0);

  print(identical(p1, p2)); // Çıktı: true
  print(identical(p1, p3)); // Çıktı: false
}

const yapıcıların kullanımı avantajları:

  • Performans: Nesneler yalnızca bir kez oluşturulur ve tekrar kullanılır.
  • Bellek tüketiminin azaltılması: Oluşturulan nesne sayısı azaltılır.
  • Değişmezlik: const ile oluşturulan nesneler değiştirilemez.

Kısıtlamalar:

  • Sınıfın factory yapıcıya sahip olmaması gerekir.
  • Sınıf değiştirilebilir alanlar içermemelidir.

Sabit yapıcılar, Flutter'da Text, Icon, Padding, SizedBox gibi değiştirilemez widget'lar oluşturmak için sıklıkla kullanılır ve bu, kullanıcı arayüzü performansını optimize etmek için iyi bir uygulamadır.