0Pricing
Dart Academy · Ders

Final Alanları ve Derin Değişmezlik

Hiç değişmeyen nesneler oluşturun.

Final Alanları ve Derin Değişmezlik, CoddyKit'te ücretsiz bir Dart Academy dersidir. Bu, 4 dersinin 1. 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.

Tasarı gereği değişmez

Değişmez bir nesne oluşturulduktan sonra hiçbir zaman değişmez. Bu, verilerinizin öngörülebilir olmasını ve uygulamanızın her yerinde güvenle paylaşılabilmesini sağlar. 🔒

Değişmez alanla tanışın

Değişmez bir alan, oluşturma sırasında bir kez atanır ve bir daha yeniden atanamaz. Değer, nesnenin ömrü boyunca yerinde sabit kalır.

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

Yeniden atama hatadır

Değişmez bir alana yeni bir değer atamayı deneyin; derleyici bunu engeller. Hata, programınız daha çalışmadan yakalanır.

final p = Point(3);
p.x = 9; // compile error

Değişmez ve sabit karşılaştırması

Değer derleme zamanında biliniyorsa sabit kullanın; çalışma zamanında hesaplanıyorsa değişmez kullanın. Her ikisi de daha sonra yeniden atamayı engeller.

const pi = 3.14;
final now = DateTime.now();

Sabit yapıcılar

Bir sınıfa sabit yapıcı verirseniz Dart gerçekten sabit örnekler oluşturabilir. Tüm alanlarının kendisi de değişmez olmalıdır.

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

Paylaşılan sabit örnekler

Birbirinin aynısı olan iki sabit nesne, bellekte tamamen aynı örnektir. Dart bunları yeniden kullanarak hem alandan hem de zamandan tasarruf eder.

const a = Color(0);
const b = Color(0);
print(identical(a, b)); // true

Yüzeysel ve derin

Değişmez bir alan yeniden atamayı engeller, ancak işaret ettiği şeyi dondurmaz. Değişmez bir listeye yine de öğe eklenebilir.

final nums = [1, 2];
nums.add(3); // allowed!

Derin değişmezlik hedefi

Derin değişmezlik, nesneden erişilebilen hiçbir şeyin değişememesi demektir. Buna tamamen ulaşmak için yalnızca değişmez alanlar yeterli değildir.

Koleksiyonları dondurma

Bir listenin etrafına List.unmodifiable sarın; böylece ekleme veya silme girişimleri hata verir. Artık yapının tamamı donmuş kalır.

final tags = List.unmodifiable([1, 2]);
tags.add(3); // throws at runtime

Sabit koleksiyon değişmezleri

Derinlemesine değişmez, derleme zamanında oluşturulan bir koleksiyon elde etmek için değişmezin önüne sabit ekleyin. Hiçbir şekilde değiştirilemez.

const days = ['Mon', 'Tue'];
// days.add(...) is forbidden

Neden önemlidir

Değişmez veriler iş parçacığı açısından güvenlidir, önbelleğe alınmaları kolaydır ve Flutter'da durum yönetimi için uygundur. Gizli değişikliklerden kaynaklanan hatalar tamamen ortadan kalkar.

Hızlı kontrol

Değişmez alanlar ve değişmezlik hakkında son bir kontrol.

Özet

Değişmez alanların bir alanı kilitlediğini, sabitlerin derleme zamanı değerlerini sabitlediğini ve derin değişmezlik için değiştirilemez veya sabit koleksiyonlar gerektiğini öğrendiniz. 🎉

Sıkça Sorulan Sorular

“Final Alanları ve Derin Değişmezlik” dersi ücretsiz mi?

Evet — “Final Alanları ve Derin Değişmezlik” 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.

“Final Alanları ve Derin Değişmezlik” dersinde ne öğreneceğim?

Hiç değişmeyen nesneler oluşturun. 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 1. dersidir.

“Final Alanları ve Derin Değişmezlik” 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. Final Alanları ve Derin Değişmezlik
  2. sealed Sınıflar ve Kapsamlı switch
  3. base, interface ve final Belirteçleri
  4. copyWith ve Değer Eşitliği
← Dart Academy Sayfasına Dön