Swift Academy · Ders

Kapanışlarda Tür Çıkarımı

Kapanışlardaki parametre ve dönüş türü çıkarımını anlayın.

4. ders / 413 adım

Kapanışlarda Tür Çıkarımı, CoddyKit'te ücretsiz bir Swift 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, Swift Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Swift Academy kursu toplamda 4 dersten oluşur.

Kapanışlar Türleri Çıkarır

Birçok bağlamda kapanış, kullanım biçiminden hem parametre hem de dönüş türlerini çıkarabilir.

let numbers = [1, 2, 3, 4]
let doubled = numbers.map { $0 * 2 }
print(doubled)

Çıkarılan Parametre Türü

Bir kapanışı map'e geçirdiğinizde öğe türü, Swift'e $0'ın ne olduğunu söyler; böylece parametre türünü yazmayabilirsiniz.

let names = ["ada", "bob"]
let upper = names.map { $0.uppercased() }
print(upper)

Çıkarılan Dönüş Türü

Kapanışın gövdesi dönüş türünü belirler. Bir Bool döndürmek, kapanışı bir koşul ifadesi yapar.

let nums = [1, 2, 3, 4, 5]
let evens = nums.filter { $0 % 2 == 0 }
print(evens)

Kısa Parametre Adları

$0, $1 ve devamı, türleri çıkarıldığında kapanış bağımsız değişkenlerine konumlarına göre başvurur.

let sums = zip([1, 2, 3], [10, 20, 30]).map { $0 + $1 }
print(Array(sums))

Gerektiğinde Açık Parametreler

Anlaşılırlığı artırıyorsa parametrelere yine ad verebilir ve türlerini belirtebilirsiniz.

let nums = [3, 1, 2]
let sorted = nums.sorted { (a: Int, b: Int) -> Bool in
    return a < b
}
print(sorted)

Bağlamdan Çıkarım

Bir kapanışı türü belirtilmiş bir değişkene atarsanız değişkenin türü, kapanışa imzasının ne olduğunu söyler.

let add: (Int, Int) -> Int = { a, b in a + b }
print(add(2, 3))

Sondaki Kapanış

Sondaki kapanış söz dizimi, çağrı noktalarını okunabilir kılarken çıkarımın çalışmasını sürdürür.

let result = [5, 3, 8, 1].sorted { $0 > $1 }
print(result)

reduce İçinde Çıkarım

reduce içinde biriktiricinin ve öğenin türleri, başlangıç değerinden ve diziden çıkarılır.

let total = [1, 2, 3, 4].reduce(0) { acc, x in acc + x }
print(total)

Kapanıştan Değer Döndürme

Tek ifadeli kapanışlarda return anahtar sözcüğü atlanabilir; ifadenin değeri döndürülür ve türü çıkarılır.

let lengths = ["hi", "hello", "hey"].map { $0.count }
print(lengths)

Türü Belirtilmiş Kapanış Değişkeni

Bir kapanış hemen çağrılmadan depolanıyorsa Swift'in gövdeyi çıkarabilmesi için kapanış türünü belirtin.

let transform: (String) -> Int = { $0.count }
print(transform("swift"))

Ne Zaman Tür Belirtmelisiniz

Çevreleyen bağlam tür bilgisi sağlamıyorsa Swift kapanış parametrelerinin türünü çıkaramaz; bu nedenle bunları belirtmeniz gerekir.

let isPositive: (Int) -> Bool = { n in n > 0 }
print(isPositive(5), isPositive(-3))

Kısa Kontrol

Kapanış türü çıkarımını deneyin.

Özet

Kapanışlar parametre ve dönüş türlerini map, filter veya türü belirtilmiş bir değişken gibi bağlamlardan çıkarır. Türler çıkarıldığında $0/$1 kısa gösterimini kullanın; bağlam bulunmadığında türleri açıkça belirtin.

let f: (Int) -> Int = { $0 + 1 }
let xs = [1, 2, 3].map { $0 * 10 }
print(f(9), xs)
Başlamak ücretsiz

Yapay zeka eğitmeniyle Swift öğ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
122
Dersler
409

Sıkça Sorulan Sorular

“Kapanışlarda Tür Çıkarımı” dersi ücretsiz mi?

Evet — “Kapanışlarda Tür Çıkarımı” 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 Swift Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Swift Academy kursu toplamda 4 dersten oluşur.

“Kapanışlarda Tür Çıkarımı” dersinde ne öğreneceğim?

Kapanışlardaki parametre ve dönüş türü çıkarımını anlayın. Swift 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.

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

Önceden deneyim gerekmez. CoddyKit'te Swift 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.

“Kapanışlarda Tür Çıkarımı” 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 Swift Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Swift 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. Tür Çıkarımı Nasıl Çalışır
  2. Açık Annotations Ne Zaman Eklenmeli
  3. Sabitlerle Tür Çıkarımı
  4. Kapanışlarda Tür Çıkarımı
← Swift Academy Sayfasına Dön