- Kotlin K2 derleyicisi kararlı sürüme ulaştı. Önceki derleyiciye kıyasla performans artışı, yeni dil özelliklerinin geliştirilme hızında iyileşme ve çok platformlu projeler için yapısal geliştirmeler gibi avantajlar sunuyor
- Smart cast; yerel değişkenler ve daha geniş kapsam, mantıksal
or işleciyle tür kontrolü, inline fonksiyonlar, fonksiyon türü özellikleri, istisna işleme ve artırma/azaltma işleçleri gibi alanlarda iyileştirildi
- Çok platformlu projelerde ortak ve platform kaynaklarının derlenmesi daha katı biçimde ayrıldı.
expect/actual bildirimlerinde görünürlük seviyelerinin farklı olabilmesi sağlandı
- Kotlin/Wasm; Binaryen ile optimizasyonu varsayılan olarak destekleme, named export desteği,
@JsExport fonksiyonlarında unsigned primitive type desteği ve JS exception catch desteği gibi açılardan geliştirildi
- Kotlin/JS;
es2015 derleme hedefinin eklenmesi, suspend fonksiyonların ES generator olarak derlenmesi, main fonksiyonuna argüman aktarımı, dosya düzeyinde derleme, koleksiyon interop iyileştirmeleri ve js-plain-objects eklentisi gibi yenilikler aldı
- Kotlin Multiplatform; derleyici seçeneklerinin Gradle DSL ile ayarlanması, Compose derleyici eklentisinin entegrasyonu, Kotlin veri klasörü değişikliği ve Kotlin/Native derleyicisinin gerektiğinde indirilmesi gibi konularda iyileştirildi
- Standart kütüphanede enum sınıfları için
values genel fonksiyonunun yerine geçen yapı, AutoCloseable arayüzü ve ortak genişletme fonksiyonları kararlı hale geldi
1 yorum
Basit bir (ve uç düzeyde) derleyici performans kıyaslaması.
https://github.com/ganadist/kotlin_build_performance
Her projede 200 class var ve her class 2000 alan içeriyor
java : 2 saniye
kotlin 1.9.24 : 1 dakika 20 saniye
kotlin 2.0.0 : 1 dakika 1 saniye
Macbook Pro M1 Max üzerinde doğruladım.
Yukarıdaki proje biraz uç bir örnek; genel olarak Kotlin 1.9 ile karşılaştırıldığında 2.0'ın derleme hızının yaklaşık 2 kat olduğunu düşünüyorum.