Yapı Bozma Bildirimleri
Değerleri değişkenlere açın
Yapı Bozma Bildirimleri, CoddyKit'te ücretsiz bir Kotlin Academy dersidir. Bu, 4 dersinin 3. 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, Kotlin Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Kotlin Academy kursu toplamda 4 dersten oluşur.
Nesneleri Açma
Bazen bir nesnenin birkaç özelliğini aynı anda almak istersiniz.
Kotlin'in yapı bozma bildirimleri, tek bir nesneden birden çok değişkene tek satırda atama yapmanızı sağlar.
Temel Yapı Bozma
= işaretinin sol tarafında adları parantez içine yazın. Kotlin, nesnenin bileşenlerini sırayla bu adlara atar.
Veri sınıfları bunu otomatik olarak destekler.
data class User(val name: String, val age: Int)
fun main() {
val user = User("Alice", 30)
val (name, age) = user
println(name)
println(age)
}Nasıl Çalışır
Arka planda yapı bozma, oluşturulan component1(), component2() ve diğer işlevleri çağırır.
Her değişkenin konumu, karşılık gelen bileşen işleviyle eşleşir.
data class Point(val x: Int, val y: Int)
fun main() {
val p = Point(3, 7)
println(p.component1())
println(p.component2())
}Sıra Önemlidir
Değişkenler ada göre değil, konuma göre eşleştirilir.
İlk değişken, ona ne ad verdiğinizden bağımsız olarak her zaman ilk kurucu özelliğini alır.
data class Pair2(val first: Int, val second: Int)
fun main() {
val (a, b) = Pair2(10, 20)
println(a) // first property
println(b) // second property
}Bileşenleri Atlamak
İhtiyacınız olmayan bir bileşeni atlamak için alt çizgi _ kullanın.
Bu, yalnızca bazı değerler önemli olduğunda kodunuzu temiz tutar.
data class User(val name: String, val age: Int, val city: String)
fun main() {
val (name, _, city) = User("Mia", 28, "Paris")
println(name)
println(city)
}Döngülerde Yapı Bozma
Yapı bozma, nesne koleksiyonları üzerinde yineleme yaparken özellikle kullanışlıdır.
Her öğeyi doğrudan for başlığında açabilirsiniz.
data class User(val name: String, val age: Int)
fun main() {
val users = listOf(User("A", 20), User("B", 25))
for ((name, age) in users) {
println(name + " is " + age)
}
}Eşleme Girdilerini Yapı Bozma
Eşlemeler, girdileri anahtar ve değer bileşenleri sağladığı için yapı bozmayı destekler.
Bu, bir eşleme üzerinde yineleme yapmayı çok okunaklı hâle getirir.
fun main() {
val scores = mapOf("Alice" to 90, "Bob" to 85)
for ((name, score) in scores) {
println(name + ": " + score)
}
}Birden Çok Değer Döndürme
Bir işlev bir veri sınıfı döndürebilir ve çağıran taraf sonucu yapılarına ayırabilir.
Bu, çıktı parametrelerine temiz bir alternatiftir.
data class MinMax(val min: Int, val max: Int)
fun minMax(nums: List<Int>): MinMax {
return MinMax(nums.min(), nums.max())
}
fun main() {
val (low, high) = minMax(listOf(3, 1, 8, 5))
println(low)
println(high)
}İkili ve Üçlü Yapı Bozma
Standart kitaplıktaki Pair ve Triple da yapı bozmayı destekler.
Bir sınıf tanımlamadan hızlı gruplamalar yapmak için kullanışlıdırlar.
fun main() {
val pair = Pair("x", 1)
val (label, value) = pair
println(label)
println(value)
}Lambda Parametrelerini Yapı Bozma
Yapı bozmayı doğrudan bir lambda'nın parametre listesi içinde yapabilirsiniz.
Bu, girdiler veya ikililer üzerinde eşleme yaparken yaygın olarak kullanılır.
fun main() {
val map = mapOf(1 to "one", 2 to "two")
val text = map.map { (key, value) -> "" + key + "=" + value }
println(text)
}Bir Araya Getirme
Yapı bozma, nesneleri değişkenlere açar:
=işaretinin solunda parantez kullanın- Bileşenler konuma göre eşleştirilir
_ile atlayın- Döngülerde, lambdalarda ve döndürme işlemlerinde çalışır
data class Result(val ok: Boolean, val message: String)
fun main() {
val (ok, message) = Result(true, "done")
println(ok)
println(message)
}Kısa Sınama
Yapı bozma bildirimleri konusundaki anlayışınızı sınayın.
Özet
Yapı bozma bildirimlerini öğrendiniz:
- Bir nesneyi birden çok değişkene açarlar
- Eşleştirme,
componentN()aracılığıyla konuma göre yapılır _, istenmeyen bileşenleri atlar- Döngülerde, eşlemelerde, lambdalarda ve döndürme işlemlerinde çalışırlar
Sırada, kümeler ve eşlemeler gibi koleksiyonların içinde veri sınıflarını kullanacaksınız.
Sıkça Sorulan Sorular
“Yapı Bozma Bildirimleri” dersi ücretsiz mi?
Evet — “Yapı Bozma Bildirimleri” 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 Kotlin Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Kotlin Academy kursu toplamda 4 dersten oluşur.
“Yapı Bozma Bildirimleri” dersinde ne öğreneceğim?
Değerleri değişkenlere açın Kotlin 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.
Kotlin Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Kotlin 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 3. dersidir.
“Yapı Bozma Bildirimleri” 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 Kotlin Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Kotlin 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
- Veri Sınıflarını Tanımlama
- copy ve equals
- Yapı Bozma Bildirimleri
- Koleksiyonlarda Veri Sınıfları