Kotlin Hakkında

Merhabalar bu makalemde sizlere Kotlin programlama dilinden bahsetmek istiyorum. 

Kotlin 2010 yılında JetBrains şirketinin bir projesi olarak başlayan ve 19 Temmuz 2011 yılında JVM Language Summit(JVM Dil Zirvesi) etkinliğinde duyurulan bir programlama dilidir. Kotlin,  Apache 2.0 lisansı altında geliştirilen açık kaynak kodlu bir proje olduğundan kaynak kodları herkese açıktır ve GitHub üzerinden yayınlanmaktadır. Kaynak kodlarına şu linkten ulaşabilirsiniz.

Bu kadar programlama dili varken, bu dil niçin geliştirildi diye düşünebilirsiniz. JetBrains şirketi bu soruya; “Performans ve güvenliği feda etmeden Java’dan daha özlü kodlar yazmayı sağlamak için bu dili geliştirdik” cevabını vermektedir. Yani Kotlin’in temel hedefi Java’dan daha kısa ve daha özlü kodlar yazmayı sağlamaktır. Kaba bir tahminle kod satır sayısını Java’ya göre %40 daha azaltır.

Kotlin programlama dili Java’dan daha güvenlidir. Çünkü 1965 yılından beri nesne tabanlı programlarda kullanılan ve milyar dolarlık zararlara yol açan null verisi bu dil ile daha güvenli olarak ele alınıp sisteme zarar vermesi engellenmiştir. Ayrıca Kotlin’de Java’dan farklı olarak her şey birer nesne olarak kabul edilir. Java’da böyle bir durum maalesef bulunmuyor. Çünkü Java’da primitive(ilkel) veri türleri olduğu için her şey birer nesne değildir.

Kotlin, Java’dan daha özlü ve daha güvenli kodlar yazmayı sağlamakla beraber Java’dan ayrı düşünülemez. Çünkü Kotlin, JVM tabanlı bir dildir ve Java’da olduğu gibi derleyici bytecode üretir. Bundan dolayı Java ile %100 uyumlu olarak çalışır. Kotlin, Java’dan daha özlü ve daha güvenli kod yazmayı sağlayabilir ancak cep telefonlarından uydu sistemlerine kadar her alan da çalışan Java ile yarışmak yerine Java ile uyumlu çalışmak daha mantıklı olduğu için bu dil tamamen Java uyumlu olarak geliştirilmiştir.

Kotlin ve Java o kadar uyumlu dillerdir ki; Kotlin içinden Java kodlarını, Java içinden Kotlin kodlarını kullanabiliriz. Diyelim daha önce Java ile hazırladığınız kütüphaneleriniz var. Bunları Kotlin’de tekrar yazmak zorunda değilsiniz. Java paketlerini Kotlin içine import ederek uygulamalarınızı geliştirebilirsiniz. Bu şekilde Java’dan kopmanıza gerek kalmaz. 

Kotlin, Java’dan daha güvenli ve daha özlü kod yazmayı sağlamakla beraber Java’yı bırakıp sadece Kotlin ile uygulama geliştireceğim diye düşünmeyiniz. Çünkü Kotlin ile uygulama geliştirmek için Java kütüphanelerine ihtiyacımız var. Bunun için Java JDK’yı bilgisayarınıza mutlaka kurmanız gerekiyor.  Yani Kotlin ve Java arasında baya yakın bir akrabalık bulunmaktadır. Ancak özlü kod yazmak için Kotlin’i, esaslı kod yazmak için Java’yı kullanmanızı tavsiye ederim. 

Özet olarak bence Java veya bence Kotlin gibi polemiklere girerek kardeş olan bu iki dili düşman etmenin bir gereği yok. Çünkü Kotlin ile uygulama geliştirmek için mutlaka ama mutlaka Java JDK’yı kurmanız gerekiyor. Java ile çalışan biri olarak her iki dili birlikte kullanarak uygulamalar geliştirmeye devam edeceğimi özellikle belirtmek isterim.

Kotlin’in bir JVM dili olması ve Java ile %100 uyumlu çalışması Kotlin’e dikkatleri çekmekle beraber, tek kullanım alanı bu değildir. Kotlin kodlarını kullanarak sunucu veya istemci taraflı web uygulamaları da geliştirebiliriz. Kotlin içinden HTML sayfalarında bulunan etiketlere erişebilir ve bunların özelliklerini değiştirebiliriz. Hatta HTML sayfasına yeni etiketler de ekleyebiliriz. Bunları yapabilmek için DOM standartını kullanmamız gerekiyor. Ayrıca Kotlin kodlarını JavaScript’e derleyip HTML sayfalarında kullanabiliriz. 

Peki Kotlin ile ilgili özellikler bitti mi? Kesinlikle hayır. Kotlin yukarıda verilen özellikleriyle beraber en büyük atağını Google’dan destek almakla gerçekleştirdi. 17 Mayıs 2017 tarihinde Google şirketi Android uygulamalar geliştirirken Kotlin’i resmi dil olarak kabul etti. İşte bu tarih Kotlin için bir dönüm noktası olmuştur. Bu tarihten itibaren geliştiricilerin dikkati tamamen bu dile yöneldi. 

Android uygulamaları yazarken Java’nın hantal olan yapısından kurtulmak için Kotlin programlama dili Google tarafından desteklenmiştir. Ancak bu Java’dan bir kopuş değildir. Zaten böyle bir şeyin olması şu an için olası görülmüyor. Çünkü 2007 yılından beri yaklaşık 10 yıldır Android kütüphaneleri Java ile yazılmaktadır. Yani Android uygulamaları yazarken Kotlin’i kulansanız bile Java kütüphanelerinden faydalanmanız gerekecektir.

Buraya kadar anlattıklarımızı özetlersek, Kotlin programlama dili ile çalışma nedenlerini aşağıdaki gibi sıralayabiliriz.

  • Herhangi bir Java IDE ile uyumlu olarak proje geliştirilebilmesi.
  • Java’ya kıyasla kod satır sayısını %40 oranında azaltması.
  • JVM tabanlı bir dil olması,
  • Google şirketi tarafından desteklenmesi ve Android uygulamaları geliştirmek için resmi programlama dili olarak kabul edilmesi.
  • Sunucu ve istemci tabanlı web uygulamaları geliştirmeyi desteklemesi.
  • JavaScript kodlarına derlenerek HTML sayfalarında kullanılması.
  • Güvenliğin üst düzeyde olması
  • Kotlin programlama dilinin basit olması ve öğrenilmesinin kolay olması
  • Nesne tabanlı bir dil olması
  • Açık kaynak kodlu bir proje olması ve daha birçok nedenden dolayı Kotlin programlama dili geleceği parlak olan bir projedir.

Programcılığa yeni başlayanlar temel programcılık mantığını Kotlin ile daha hızlı öğrenebilirler. Kotlin’in basit ve sade olması yeni başlayanların daha hızlı programcılığa adım atmalarını sağlar.  Kotlin sade, basit, anlaşılır, güvenli ve tamamen java ile uyumlu olduğu için öğrenilmeyi hak eden bir programlama dilidir.

Kotlin programlama dili hakkında ülkemizin ilk ve tek Türkçe kaynağını yazdım. Ayrıca kitabım JetBrains ve Google’ın Android Developer birimi tarafından referans kaynak olarak önerilmektedir. Kotlin hakkında ayrıntılı bilgilere ulaşmak ve kendinizi bu alanda geliştirmek için sizlere kitabımı tavsiye ediyorum. Ayrıntılı bilgilere buradan erişebilirsiniz.

Kotlin hakkında şimdilik bu kadar. Yazıyı paylaşarak daha çok kişinin bu konu hakkında bilgi sahibi olmasını sağlayabilirsiniz. Görüşmek üzere iyi çalışmalar diliyorum…

Paylaşmak İster misiniz
  •  
  •  
  •  
  •  
  •  

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

9 + 13 =