İçeriğe geç
Fundirod
Geliştirici

Kotlin Nedir? Android'in Resmi Dili

Güncellendi: 18 Ağustos 2026 · Okuma: 8 dakika

Kısa cevap

Kotlin, Google'ın Android geliştirme için resmi olarak önerdiği dildir. Java ile tam uyumlu çalışır; null safety, coroutines ve kısa söz dizimi sayesinde daha az kodla daha güvenli uygulamalar yazmanızı sağlar. Yeni Android projelerinin büyük çoğunluğu bugün Kotlin ile başlıyor.

Seviye

Başlangıç

Platform

Android (native)

Ne tür uygulamalar yapılır?
E-ticaretSosyal medyaBankacılıkSağlıkSpor & fitnessMüzik

1. Kotlin nedir?

Kotlin, JetBrains tarafından geliştirilen, JVM (Java Virtual Machine) üzerinde çalışan statik tipli bir programlama dilidir. Java koduyla birebir birlikte çalışabildiği için (interoperability), mevcut Java projelerine adım adım entegre edilebilir — tüm uygulamayı bir gecede dönüştürmeniz gerekmez.

Google 2017'de Kotlin'i resmi olarak desteklediğini, 2019'da ise "Kotlin-first" yaklaşımını duyurdu: yeni Jetpack kütüphaneleri ve dokümantasyon artık önce Kotlin odaklı hazırlanıyor.

2. Ne işe yarar, ne tür uygulamalar yapılır?

Kotlin, Android'de her şeyi yapabileceğiniz genel amaçlı bir dildir. Uygulamanın arayüzünden ağ isteklerine, veritabanından arka plan servislerine kadar tüm katmanlar Kotlin ile yazılır. Pratikte şu tür projelerde karşınıza çıkar:

  • E-ticaret uygulamaları: ürün listeleme, sepet, ödeme akışı, sipariş takibi.
  • Sosyal medya ve mesajlaşma: gerçek zamanlı akış, bildirimler, medya yükleme.
  • Bankacılık ve fintech: güvenli oturum yönetimi, biyometrik giriş, işlem geçmişi.
  • Spor & fitness: adım/nabız sensörlerinden veri okuma, antrenman kaydı, harita üzerinde rota.
  • Müzik ve medya: arka planda çalan müzik servisi, çalma listesi, indirme yönetimi.
  • Sağlık ve randevu: takvim entegrasyonu, hatırlatıcı bildirimler, form akışları.

Ağır 3B oyunlar genelde Unity/Unreal gibi motorlarla yapılır; ancak 2B kart/bulmaca oyunları ve oyun içi menüler rahatlıkla Kotlin ile yazılabilir.

3. Java'ya göre avantajları

  • Null safety: Null olabilecek ve olamayacak değerler tip sisteminde ayrılır; uygulamaların en yaygın çökme sebebi olan NullPointerException derleme zamanında yakalanır.
  • Daha kısa söz dizimi: Data class, when ifadesi ve tip çıkarımı sayesinde aynı işlev çoğu zaman yarı yarıya daha az satırla yazılır.
  • Uzantı fonksiyonları: Var olan sınıflara miras almadan yeni davranış ekleyebilirsiniz.
  • Coroutines: Asenkron işleri callback karmaşası olmadan, senkron kod gibi okunabilir şekilde yazarsınız.

4. Coroutines: asenkron işlerin kolay yolu

Ağ isteği veya veritabanı sorgusu gibi uzun süren işler ana iş parçacığını (main thread) bloklarsa arayüz donar. Coroutines, bu işleri arka plana taşırken kodu düz ve okunabilir tutar:

suspend fun kullaniciGetir(id: Int): Kullanici {
    return withContext(Dispatchers.IO) {
        api.kullaniciDetay(id)   // ağ isteği arka planda
    }
}

Bu, Android'de arka plan işlerinin bugünkü standart yoludur.

5. Nasıl başlanır? Öğrenme yol haritası

  1. Android Studio'yu kurun — Kotlin desteği hazır gelir, ayrıca bir şey yüklemenize gerek yok.
  2. Dil temellerini tarayıcıda pratik yaparak öğrenin: değişkenler, fonksiyonlar, sınıflar, null safety.
  3. Basit bir "tek ekranlı" uygulama yazın: bir liste gösterin, öğeye tıklayınca detay ekranı açın.
  4. Bir genel API'den (örneğin ücretsiz bir hava durumu servisi) veri çekip listeleyin — ağ + coroutines pratiği.
  5. Veriyi cihazda saklamayı öğrenin (Room veritabanı), sonra arayüzü Jetpack Compose ile yazmaya geçin.

Bu beş adım, sıfırdan çalışan bir uygulamaya ulaşmak için gereken minimum yoldur — ortalama olarak birkaç haftalık düzenli çalışmayla tamamlanabilir.

6. Basit bir örnek

data class Urun(val ad: String, val fiyat: Double)

fun main() {
    val sepet = listOf(
        Urun("Kablosuz kulaklık", 1299.90),
        Urun("Telefon kılıfı", 149.50)
    )

    val toplam = sepet.sumOf { it.fiyat }
    println("Sepet toplamı: $toplam TL")
}

Aynı işi Java ile yazmak yaklaşık iki katı satır gerektirirdi — data class tek satırda eşitlik, kopyalama ve metne dönüştürme işlevlerini de üretir.