Ek Açıklamaları Kullanma
Koda ek açıklama ekleyin
Ek Açıklamaları Kullanma, CoddyKit'te ücretsiz bir Kotlin 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, 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.
Ek Açıklamalar Nedir
Ek açıklamalar, koda üst veri ekler. Kendi başlarına davranışı değiştirmezler; ancak araçlar, derleyiciler ve kitaplıklar karar vermek için bunları okur.
Bir ek açıklamayı, adının başına @ koyarak ve uygulandığı öğenin hemen önüne yerleştirerek yazarsınız.
İlk Ek Açıklama
Standart kitaplık, kullanışlı birkaç ek açıklamayla birlikte gelir. @Deprecated, artık kullanılmaması gereken kodu işaretler ve çağrı noktasında bir uyarı gösterir.
@Deprecated("Use newGreet() instead")
fun greet() = "Hi"
fun newGreet() = "Hello"
fun main() {
println(newGreet())
}Bağımsız Değişkenli Ek Açıklamalar
Ek açıklamalar, oluşturucu parametreleri gibi yazılan bağımsız değişkenleri alabilir. @Deprecated bir iletiyi ve isteğe bağlı olarak bir ReplaceWith ipucunu kabul eder.
@Deprecated(
message = "Renamed for clarity",
replaceWith = ReplaceWith("sum(a, b)")
)
fun add(a: Int, b: Int) = a + b
fun sum(a: Int, b: Int) = a + b
fun main() {
println(sum(2, 3))
}Uyarıları Susturma
@Suppress, derleyiciye ek açıklama uygulanan öğe için belirli uyarıları susturmasını söyler. Uyarı adlarını dizeler olarak aktarırsınız.
@Suppress("UNUSED_VARIABLE")
fun main() {
val unused = 42
println("Runs without the unused-variable warning")
}JvmStatic ve Benzerleri
Anotasyonların bazıları Kotlin'in JVM'e nasıl derlendiğini etkiler. @JvmStatic, @JvmField ve @JvmName, bayt kodunu denetleyerek Java çağıranlarının daha kullanışlı API'ler görmesini sağlar.
Bunlar yalnızca Kotlin kodunda hiçbir işlem yapmaz, ancak birlikte çalışabilirlik için önemlidir.
class Math {
companion object {
@JvmStatic
fun square(x: Int) = x * x
}
}
fun main() {
println(Math.square(5))
}Anotasyon Kullanım Yeri Hedefleri
Bir özellik, JVM'de birden çok öğe oluşturabilir: bir alan, bir getirici, bir ayarlayıcı ve kurucu parametreleri. Kullanım yeri hedefleri, bir anotasyonun nereye uygulanması gerektiğini belirtir.
Söz dizimi: @get:, @set:, @field:, @param:.
class User(@get:JvmName("fetchName") val name: String)
fun main() {
val u = User("Ada")
println(u.name)
}Java Birlikte Çalışabilirliği için Throws
Kotlin'de denetimli özel durumlar bulunmadığından Java çağıranları, siz @Throws eklemediğiniz sürece hiçbir zaman throws yan tümcesi görmez. Bu anotasyon, özel durum türünü bayt kodundaki imzaya kaydeder.
import java.io.IOException
@Throws(IOException::class)
fun readData(): String {
return "data"
}
fun main() {
println(readData())
}Birden Çok Anotasyon
Tek bir öğeye birkaç anotasyonu art arda ekleyebilirsiniz. Her biri kendi satırına yazılır veya aralarında boşluk bırakılır. Sıralamanın önemi yoktur.
@Deprecated("old")
@Suppress("DEPRECATION")
fun legacy() = "still here"
fun main() {
println(legacy())
}İfadelerde Anotasyonlar
Anotasyonlar yalnızca üst düzey işlevlere veya sınıflara değil, ifadelere ve yerel bildirimlere de uygulanabilir. Bu kullanım, bir işlev gövdesi içinde @Suppress ile yaygındır.
fun main() {
@Suppress("UNUSED_VARIABLE")
val temp = computeOnce()
println("Done")
}
fun computeOnce() = 99OptIn ve Deneysel API'ler
Kitaplıklar, kararlı olmayan API'leri özel isteğe bağlı katılım anotasyonlarıyla işaretler. Bunları kullanmak için @OptIn(SomeApi::class) ile riski kabul eder veya anotasyonu aktararak bu kullanımı belirtirsiniz.
Bu yaklaşım, deneysel özelliklerin tesadüfen değil, açıkça kullanılmasını sağlar.
fun main() {
// @OptIn would appear here when calling an experimental function
println("Opt-in keeps unstable APIs visible")
}Neden Anotasyon Kullanılır?
Anotasyonlar, niyetinizi araçlara iletmenizi sağlar: derleyiciler kullanımdan kaldırılmış çağrılar konusunda uyarır, serileştirme kitaplıkları alanları eşler, sınama çatıları sınama yöntemlerini bulur ve DI çatıları bağımlılıkları bağlar.
- Üstveridir, mantık değildir
- Derleme zamanında veya çalışma zamanında okunur
- Yapılandırmayı koda yakın tutar
Kısa Sınama
Anotasyonları kullanma konusundaki anlayışınızı sınayın.
Özet
Yerleşik anotasyonları kullanmayı öğrendiniz:
@Deprecated,@Suppress,@Throws- JVM birlikte çalışabilirliği:
@JvmStatic,@JvmName @get:ve@field:gibi kullanım yeri hedefleri- Deneysel API'ler için isteğe bağlı katılım
Sırada kendi anotasyonlarınızı tanımlayacaksınız.
Sıkça Sorulan Sorular
“Ek Açıklamaları Kullanma” dersi ücretsiz mi?
Evet — “Ek Açıklamaları Kullanma” 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.
“Ek Açıklamaları Kullanma” dersinde ne öğreneceğim?
Koda ek açıklama ekleyin 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 1. dersidir.
“Ek Açıklamaları Kullanma” 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
- Ek Açıklamaları Kullanma
- Ek Açıklamaları Tanımlama
- Yansımanın Temelleri
- Uygulamalı Yansıma