Java ile Kotlin Dilini Karşılaştırma

Yazılım geliştiricileri, Android Uygulama oluşturmak için uzun zamandır Java programlama dilini kullanmaktadır. Fakat bilişim  alanı hızlı bir şekilde yenilenen  canlı bir sektördür.Bu gerçeklikten dolayı, Google Android yazılım alanında kendini güncelledi ve Google 2017 yılında , Android ortamında Kotlin programlama dilini destekleyeceğini duyurdu.

Ben ise bu makalemde Kotlin dilinin yapısını, avantajlarını ve Kotlin ile Java dilinin farklılıklarını anlatacağım.

Kotlin Nedir?

Kotlin, JetBrains firması tarafından 2011 yılında geliştirilmeye başlanan ve ilk stabil sürümünü (v1.0) 2016 yılında yayınlanan yeni programlama dilidir.

Nasıl Java programlama dili ile Android uygulama geliştiriyorsanız, aynen Kotlin dili ile de Android uygulama geliştirebilirsiniz. Aynı zamanda Kotlin ile server-side uygulamaları da geliştirebilirsiniz

Kotlin Programlama Dilinin Yapısı

Temel olarak Java, C ve C ++ gibi – Kotlin de “statik olarak yazılmış programlama dili” dir. Statik olarak yazılan programlama dilleri, değişkenlerin kullanılmadan önce tanımlanmasını gerektirmeyen dillerdir.

Kotlinde öncelikle değişkenimizin adını sonrasında ise değişken tipimizi isteğe ve duruma göre yazmaktayız (İstersek değişken tipimizi yazmayız). Değişken tipimizi yazmasakta Kotlin dili değişkene atanan değere göre tipini kendisi atıyor.

/* Kotlin kod*/
val a: Int
val b: Int
a=5
b=10

Bildiğiniz üzere Java dilinde ise değişken tanımlaması yaparken önce değişken tipini yazıp sonrasında değişken adını yazmamız gerekiyor.

/* Java Kod */
static int num1, num2; 
num1 = 20; 
num2 = 30;

Nesne yönelimli programlamanın sınıf ve yöntemlerine ek olarak Kotlin, fonksiyon yapısı ile prosedürel programlamayı da desteklemektedir.

Java, C ve C ++’da olduğu gibi, Kotlin ile programlama yaparken de “main” adlı metod içinde işlemlerin başlayacağı kodlarımızı yazmalıyız.

/* Kotlin kod*/

package hello 

fun main(args: Array < String > ) { 
 val scope = “Kotlin”
 println(“Hello, $scope!”)
}

Java’nın dosya adı uzantıları .java, .class, .jar iken diğer yandan Kotlin’in dosya adı uzantıları .kt ve .kts’dir.

Kotlin Programlama Dilinin Yararları

  • Kotlin, Java’da olduğu gibi jdk tarafından bytecode olarak tabir edilen JRE’nin okuyabileceği makine koduna dönüştürülerek, her türlü ortamda çalıştırılabilir bir dildir. Ayrıca Kotlin, Javascript koduna da derlenebilir
  • Kotlin programları, mevcut tüm Java Framework ve Kütüphanelerini kullanabilir. Diğer bir yandan Kotlin dili,  Maven, Gradle ve diğer yapı sistemleri ile kolayca entegre olabilmektedir.
  • Kotlin kolayca öğrenilebilir ve ulaşılabilirdir. Kotlin’in kod yazım biçimi (syntax)  sade,kullanımı kolay ve anlaşılırdır.
  • Kotlin açık kaynak kodlu bir dildir.
  • JetBrains firması üretiği eklenti ile  Java ile yazılmış projelerin, hızlıca Kotlin’e çevrilmesine olanak sağlamıştır. Böylelikle eski projelerinizi Kotlin’ e  kolayca entegre edebilirsiniz.
  • Kotlin programlama dili, her  türde proje oluşturabilmemizi sağlamaktadır.

Kotlin ile Java Arasındaki Farklılıklar

  • Null Safety

    Kotlin’de NullPointerExceptions gibi bir exception dan kurtulmuş olduk. Bunun nedeni, Kotlin dili ile programlama yaparken varsayılan olarak hiçbir değişkene null değerini atayamazsınız ve bir metodu null değer döndüremediğiniz içindir. Örneğin,

    val 	name: String = null 	//Değeri null atamaya çalışsanızda, derleyemeyip hata verir
    	
    fun 	getName() : String = null  //Metodu null değer döndürmeye çalışsanızda, derleyemeyip hata verir
  • Data Classes

    Data classes özelliği harika bir zamandan tasarruf sağlar. Uygulamalarımızın çoğunun veri odaklı olduğunu göz önüne aldığımızda, sıklıkla kendimizi yalnızca veri saklamak için özellikler ve alanlar içeren sınıflar oluştururken kendimizi buluruz. Java’da, bu çok sıkıcıdır. Çünkü her kullanacağımız özellik için   bir get / set yöntemi belirlememiz gerekmektedir. Fakat Kotlin kullanırsak, yazacağımız sınıf ve özelliklerini tek bir satırda bildirme imkanımız bulunmaktadır. Örnek Java kodu;

    public class User {
        private String name;
        private int age;
    
        public User(String name, int age) {
            this.name = name;
            this.age = age;
        }
        public void setName(String name) {
            this.name = name;
        }
    
        public String getName() {
            return this.name;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    
        public int getAge() {
            return this.age;
        }
    }

    Örnek kodun Kotlin ile yazılmış hali;

    data class User(var name: String, var age: Int)

    Kotlin kodunu çalıştırdığınızda derleyici, elle yukarıdaki Java kodunda yazmak zorunda olduğumuz her şeyi üretir

  • Üst Düzey Fonksiyonlar ve Lambda’lar

    Önemli olan şey, Kotlin’in işlevsel bir programlama dili olmasıdır. Temel olarak Kotlin, daha yüksek seviyeli fonksiyonlar, lambda ifadeleri, operatör aşırı yüklenmesi, tembel değerlendirme, operatör aşırı yüklenmesi ve çok daha fazlasını içeren birçok kullanışlı yöntemden oluşur.

  • Type Inference

    Kotlin’de, her değişkenin türünü belirtmek zorunda olmamız çok güzel özelliktir.  Ancak, bir veri türünü açıkça tanımlamak isterseniz, bunu da yapabilirsiniz.

    /* değişken tipi belirtilmemiş kod*/
    	
    fun main(args: Array<String>) {
    
       val text = 10
    
       println(text)
    
    }
    	
    /* değişken tipi belirtilmiş kod*/
    	
    fun main(args: Array<String>) {
    
       val text: Int = 10
    
       println(text)
    }

     

Genel olarak özetlemek gerekirse, Kotlin programlama dilinin Java diline göre  bir çok avantaj ve farklılıkları bulunmaktadır.

Tavsiye Edilen Yazılar

Henüz yorum yapılmamış, sesinizi aşağıya ekleyin!


Bir Yorum Ekle

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