Sıfır Maliyetli Sarmalayıcılar için Extension Türleri
Çalışma zamanı ek yükü olmadan bir türü sarmalama
Sıfır Maliyetli Sarmalayıcılar için Extension Türleri, 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.
Farklı Bir Araç
Bir extension type daha yeni bir özelliktir: mevcut bir türü, çalışma zamanı maliyeti olmadan yeni bir arayüz sunacak şekilde sarar.
Kutulamadan Sarın
Gerçek bir sarmalayıcı sınıfın aksine, bir uzantı türü çalışma zamanında hiçbir nesne eklemez. Çalışma zamanında yalnızca temel değerin kendisidir.
extension type UserId(int id) {}Gösterim Türü
Parantez içindeki değer gösterim türüdür. Burada bir UserId, daha güvenli bir ad taşıyan aslında yalnızca bir int'tir.
extension type Meters(double value) {}Kolayca Oluşturun
Bir uzantı türünü, kurucu çağırır gibi oluşturur ve temel değeri doğrudan verirsiniz.
var id = UserId(42);
var d = Meters(3.5);Güvenli Yöntemler Ekleyin
Gövdenin içinde, sarılmış değer üzerinde çalışan yöntemler ve getter'lar ekleyerek değere gerçek bir anlam kazandırabilirsiniz.
extension type Meters(double value) {
Meters plus(Meters o) => Meters(value + o.value);
}typedef'ten Daha Güçlü
Bir typedef yalnızca bir takma addır; uzantı türü ise ayrı bir türdür. Bir UserId ile sıradan bir int'i yanlışlıkla birbirine karıştıramazsınız.
int raw = 42;
// UserId u = raw; // error: not interchangeableTemel API'yi Gizleyin
Varsayılan olarak bir uzantı türü, sarılan türün üyelerini gizler; böylece yalnızca dışa sunduğunuz yöntemler çağrılabilir.
var m = Meters(2.0);
// m.toStringAsFixed(2); // not available unless exposedYa da Dışa Sunmak İçin Uygulayın
Temel üyeleri yönlendirmek için implements ekleyin; böylece çağıranlar hem API'nizi hem de temel türü kullanabilir.
extension type Score(int value) implements int {}
print(Score(9) + 1); // 10Sıfır Çalışma Zamanı Ek Yükü
Gerçek bir nesne oluşturulmadığı için uzantı türlerinin çalışma zamanında hiçbir maliyeti yoktur. Tür güvenliğini ücretsiz elde edersiniz.
Alan Tanımlayıcıları İçin İdeal
UserId veya Email gibi türü belirlenmiş tanımlayıcılarda çok kullanışlıdırlar; yanlış int'i yanlış yuvaya geçirmenizi engellerler.
void load(UserId id) {}
load(UserId(7)); // load(7) would not compileUzantılar ve Uzantı Türleri
Bir uzantı, herkesin paylaştığı bir türe yöntem ekler; uzantı türü ise bir değer etrafında yeni ve ayrı bir tür oluşturur.
Hızlı Kontrol
Son kontrol: uzantı türlerini özel kılan nedir?
Özet: Uzantı Türleri
Uzantı türleriyle tanıştınız: bir gösterim türü üzerine kurulmuş, ayrı ve maliyetsiz sarmalayıcılardır; çalışma zamanı ek yükü olmadan güvenli kimlikler ve birimler için idealdirler. 🏁
Yapay zeka eğitmeniyle Dart öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 30
- Dersler
- 120
Sıkça Sorulan Sorular
“Sıfır Maliyetli Sarmalayıcılar için Extension Türleri” dersi ücretsiz mi?
Evet — “Sıfır Maliyetli Sarmalayıcılar için Extension Türleri” 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.
“Sıfır Maliyetli Sarmalayıcılar için Extension Türleri” dersinde ne öğreneceğim?
Çalışma zamanı ek yükü olmadan bir türü sarmalama 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.
“Sıfır Maliyetli Sarmalayıcılar için Extension Türleri” 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
- İlk Extension'ınızı Yazma
- Generics Üzerinde Extension'lar
- Statik Extension Üyeleri ve Çakışmalar
- Sıfır Maliyetli Sarmalayıcılar için Extension Türleri