Anonim İşlevler ve Kapanımlar
Satır içi işlevlerde değişkenleri yakalama
Anonim İşlevler ve Kapanımlar, CoddyKit'te ücretsiz bir Dart Academy dersidir. Bu, 4 dersinin 2. 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.
İsimsiz İşlevler
Bazen bir işlevi yalnızca bir kez kullanmanız ve bir daha kullanmamanız gerekir. Anonim işlevin adı yoktur ve doğrudan kullandığınız yerde yazılır. ✨
Temel Biçim
Anonim işlev yalnızca parametrelerden ve bir gövdeden oluşur; önünde bir ad bulunmaz. Onu bir değişkende saklayabilirsiniz.
var greet = (String n) {
print('Hi ' + n);
};Saklanan İşlevi Çağırma
Saklandıktan sonra, tıpkı adlandırılmış herhangi bir işlev gibi parantezleri kullanarak onu değişken üzerinden çağırırsınız.
greet('Ada');Bir Tanesini Satır İçinde Geçirme
Çoğu zaman anonim bir işlevi doğrudan bir yönteme geçirirsiniz. Burada forEach işlevi onu her öğe için çağırır.
[1, 2, 3].forEach((n) {
print(n * 2);
});Ok Anonim İşlevleri
Tek ifadeli bir gövde için anonim işlevleri ok ile birleştirerek kodu kısa tutabilirsiniz.
var doubled = [1, 2, 3].map((n) => n * 2);Kapanış Nedir?
Kapanış, oluşturulduğu yerdeki değişkenleri, dış kapsam sona erdikten sonra bile hatırlayan bir işlevdir.
Bir Değişkeni Yakalama
Aşağıdaki iç işlev adım değişkenini yakalar. Daha sonra döndürülen işlevi her çağırdığınızda bu değeri kullanmaya devam eder.
Function adder(int step) {
return (int x) => x + step;
}Her Kapanış Kendine Özgüdür
Üreticiyi iki kez çağırdığınızda, döndürülen her kapanış ayrı bir yakalanmış değeri korur. Birbirlerini etkilemezler.
var add5 = adder(5);
var add10 = adder(10);Kapanışlar Durum Tutar
Yakalanmış bir değişken çağrılar arasında değişebilir; böylece bir kapanış, küçük bir sayaç gibi ilerlemeyi hatırlayabilir.
int count = 0;
var tick = () => ++count;Neden Önemli?
Geri çağırmalar, olay işleyicileri ve liste yöntemleri kapanışlara dayanır. Gereksinim duyduğu verilerle birlikte davranışı paketlemenizi sağlarlar.
Küçük Tutun
Satır içi kapanışlar kısa olduklarında çok kullanışlıdır. Biri karmaşıklaşırsa, başkalarının kolayca okuyabilmesi için ona gerçek bir ad verin.
Hızlı Kontrol
Bir işlevi kapanış yapan nedir?
Özet
Tek seferlik kullanım için anonim işlevlerle ve kendi durumlarını taşımak üzere çevredeki değişkenleri yakalayan kapanışlarla tanıştınız. 🎯
Sıkça Sorulan Sorular
“Anonim İşlevler ve Kapanımlar” dersi ücretsiz mi?
Evet — “Anonim İşlevler ve Kapanımlar” 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.
“Anonim İşlevler ve Kapanımlar” dersinde ne öğreneceğim?
Satır içi işlevlerde değişkenleri yakalama 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 2. dersidir.
“Anonim İşlevler ve Kapanımlar” 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
- Tek Satırlık İşlevler için Ok Sözdizimi
- Anonim İşlevler ve Kapanımlar
- Nullable Türler ve Soru İşareti
- Null Farkındalıklı İşleçler: ?., ?? ve !