Kotlin

Vikipedi, özgür ansiklopedi
Gezinti kısmına atla Arama kısmına atla
Kotlin
Kotlin Logo
İlk çıkışı 2011
Tasarımcı JetBrains
Geliştirici JetBrains ve açık kaynak katkıcıları
Kararlı sürüm

Kotlin 1.1.60

(17 Kasım 2017 (2 yıl önce) (2017-11-17)[1])
Önizleme sürümü

Kotlin 1.1.2 EAP

(31 Mart 2017 (2 yıl önce) (2017-03-31)[2])
Tip sistemi Statik tipli, tür çıkarımlı
Etkilendikleri Java, Scala, Groovy, C#, Gosu, JavaScript
Platformu Çıktısı Java sanal makinesi bytecode ve JavaScript kaynağı
İşletim sistemi Tüm JVM ya da JavaScript yorumlayıcılı platformlar
Lisans Apache 2
Olağan dosya uzantıları .kt, .kts
Web sitesi kotlinlang.org

Kotlin, Java sanal makinesi (JVM) üzerinde çalışan ve ayrıca JavaScript kaynak koduna derlenebilir, statik tipli bir programlama dilidir. İlk geliştirme Saint Petersburg, Rusya merkezli JetBrains programcıları tarafından yapılmıştır.[3] İsmi Kotlin Adası'ndan gelmektedir. Java ile uyumlu sözdizimi olmasa da, Kotlin Java kodu ile birlikte çalışmak üzere tasarlanmıştır. Kotlin, Apple'ın Swift diline benzemektedir.[4]

Tarihçe[değiştir | kaynağı değiştir]

Temmuz 2011'de JetBrains, JVM için yeni bir dil olan ve bir yıldır geliştirilmekte olan Project Kotlin'i duyurdu.[5] JetBrains lideri Dmitry Jemerov, Scala dışındaki çoğu dilin aradıkları özelliklere sahip olmadığını söylemiştir.[5] Ancak, Scala'nın düşük derleme zamanını apaçık bir eksiklik olarak gösterdi. Kotlin'in belirtilen hedeflerinden biri, Java kadar çabuk derlemektir. Şubat 2012'de JetBrains, projeyi Apache 2 lisansı altında açık kaynak olarak yayınlamıştır.[6]

Kotlin v1.0, 15 Şubat 2016'da yayınlanmıştır.[7] Bu ilk stabil sürümü olarak kabul edilir ve JetBrains bu sürümden itibaren geriye dönük uyumluluk taahhüdünde bulunmuştur.

Kotlin, Google I/O 2017'de resmi bir Android geliştirme dili olarak duyrulmuştur. Java ve C++'tan sonra Android için tamamen desteklenen üçüncü dil oldu.[8]

Felsefe[değiştir | kaynağı değiştir]

Geliştirme sorumlusu Andrey Breslav, Kotlin'in nesne yönelimli endüstriyel bir dil ve Java'dan "daha iyi bir dil" olarak tasarlandığını söyledi. Ancak hala Java koduyla tamamen birlikte çalışabilir ve şirketler Java'dan Kotlin'e kademeli bir geçiş yapabilir.[9]

Sözdizimi[değiştir | kaynağı değiştir]

Kotlin değişken bildirimleri ve parametre listelerinin veri türü, değişken adından sonra gelir. Scala ve Groovy'de olduğu gibi, noktalı virgül bir deyim sonlandırıcısı olarak isteğe bağlıdır; çoğu durumda derleyici ifadenin sona erdiğini anlaması için bir satırsonu yeterlidir.[10]

Anlamsal[değiştir | kaynağı değiştir]

Nesnel tabanlı programlamanın sınıflarına ve metodlarına (Kotlin'de üye fonksiyonları olarak adlandrılır) ek olarak, Kotlin ayrıca fonksiyon kullanımı ile prosedürel programlamayı da destekler.[11] C ve C++'da olduğu gibi, Kotlin programının giriş noktası "main" olarak adlandırılan fonksiyondan, herhangi bir komut satırı argümanı içeren diziler geçer. Perl ve Unix/Linux shell script stili dize enterpolasyonu desteklenmektedir. Ayrıca tür çıkarımı da desteklenir.

Merhaba, Dünya! örneği

fun main(args : Array<String>) {
  val kapsam = "Dünya"
  println("Merhaba, $kapsam!")
}

Kotlin, null ve null olmayan veri türleri arasında bir ayrım yapar. Tüm null nesneleler tür isminin ardından "?" ile bildirilmelidir. Null nesneler üzerinde yapılan işlemler geliştiricilerin özel bakımına ihtiyaç duyar: null kontrolü, değeri kullanmadan önce gerçekleştirilmelidir. Kotlin, geliştiricilere yardımcı olmak için null-safe operatörleri sağlar:

fun merhabaDe(belki : String?, nullDegil : Int) {
   // elvis operatorünü kullan
   val isim : String = belki ?: "yabancı"
   println("Merhaba $isim")
}

Güvenli navigasyon operatörünün kullanımına bir örnek:

// foo null ise, veya bar() ya da baz() null döndürürse, null döndürülür.
foo ?. bar() ?. baz()

Araçlar[değiştir | kaynağı değiştir]

Dış bağlantılar[değiştir | kaynağı değiştir]

Kaynakça[değiştir | kaynağı değiştir]

  1. ^ "Kotlin 1.1.60 is out". Kotlin Blog. 13 Kasım 2017. 21 Mayıs 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 13 Kasım 2017. 
  2. ^ "Kotlin 1.1.2 EAP - EAP - Kotlin Discussions". Discuss.kotlinlang.org. 31 Mart 2017. 21 Mayıs 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2017. 
  3. ^ Heiss, Janice (Nisan 2013). "The Advent of Kotlin: A Conversation with JetBrains' Andrey Breslav". oracle.com. Oracle Technology Network. 8 Mayıs 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Şubat 2014. 
  4. ^ http://nilhcem.com/swift-is-like-kotlin/ Swift-is-like-kotlin
  5. ^ a b Krill, Paul (Jul 22, 2011). "JetBrains readies JVM language Kotlin". infoworld.com. InfoWorld. 15 Temmuz 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Şubat 2014. 
  6. ^ Waters, John (22 Şubat 2012). "Kotlin Goes Open Source". ADTmag.com/. 1105 Enterprise Computing Group. 29 Mart 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Şubat 2014. 
  7. ^ "Kotlin 1.0 Released: Pragmatic Language for JVM and Android | Kotlin Blog". Blog.jetbrains.com. 15 Şubat 2016. 22 Ekim 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2017. 
  8. ^ "Kotlin Is Officially Joining The Android's Family, In Addition To Java And C++". Eyerys. 18 Mayıs 2017. 21 Mayıs 2017 tarihinde kaynağından arşivlendi. Erişim tarihi: 18 Mayıs 2017. 
  9. ^ "JVM Languages Report extended interview with Kotlin creator Andrey Breslav". Zeroturnaround.com. 22 Nisan 2013. 19 Ekim 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Şubat 2014. 
  10. ^ "Semicolons". jetbrains.com. 23 Aralık 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 8 Şubat 2014. 
  11. ^ "functions". jetbrains.com. 23 Kasım 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 8 Şubat 2014. 
  12. ^ "Kotlin :: JetBrains Plugin Repository". Plugins.jetbrains.com. 31 Mart 2017. 29 Mayıs 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2017. 
  13. ^ "Getting Started with Eclipse Neon - Kotlin Programming Language". Kotlinlang.org. 10 Kasım 2016. 23 Ekim 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2017. 
  14. ^ "JetBrains/kotlin-eclipse: Kotlin Plugin for Eclipse". GitHub. 16 Şubat 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2017. 
  15. ^ "Using Maven - Kotlin Programming Language". kotlinlang.org. 3 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Mayıs 2017. 
  16. ^ "Using Ant - Kotlin Programming Language". kotlinlang.org. 3 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Mayıs 2017. 
  17. ^ "Using Gradle - Kotlin Programming Language". kotlinlang.org. 9 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Mayıs 2017.