Sebelum menulis satu baris kode pun, kita perlu memahami alat apa yang sedang kita pegang. Kotlin adalah bahasa pemrograman modern berstatik type-safe yang dikembangkan oleh JetBrains dan kini menjadi bahasa resmi untuk pengembangan Android bersama Java. Pada chapter ini kita akan mengenal definisi Kotlin, sejarahnya, dan ciri utama yang membuatnya diminati di banyak bidang.

Definisi Singkat #

Kotlin adalah bahasa pemrograman general-purpose yang dikompilasi ke bytecode JVM, JavaScript, atau native binary. Bahasa ini dibuat oleh JetBrains dan pertama kali dirilis ke publik pada Februari 2016 dalam versi 1.0. Sejak 2017 Google mengumumkan dukungan resmi Kotlin untuk Android, dan pada 2019 Kotlin menjadi bahasa utama yang direkomendasikan untuk Android.

Istilah “berstatik type-safe” berarti kompilator mengetahui tipe setiap variabel saat kompilasi, sehingga banyak kelas galat dapat dideteksi sebelum program dijalankan. Hal yang sama juga dimiliki Java, namun Kotlin menambahkan lapisan keamanan tambahan berupa sistem tipe null-safety bawaan yang akan kita bahas tuntas pada section khusus.

Filosofi Desain Kotlin #

Kotlin tumbuh dengan prinsip utama: menjadi bahasa yang ringkas (concise), aman (safe), dan dapat berinteroperasi penuh dengan Java (interoperable). Tiga prinsip tersebut memengaruhi setiap fitur bahasa, mulai dari type inference sampai data class yang menyingkat puluh baris boilerplate Java menjadi satu deklarasi tunggal.

Berikut ciri paling menonjol yang akan kita temui sepanjang Course ini:

CiriArtinya bagi kita
Sintaks ringkasKode lebih pendek; tidak ada titik koma, tidak ada new, tidak perlu get/set manual
Null-safety bawaanTipe nullable (String?) dipisah dari non-nullable (String) di level kompilator
Type inferenceKompilator menentukan tipe dari nilai tanpa kita menulisnya secara eksplisit
Interoperable dengan JavaKode Kotlin dapat memanggil library Java langsung dan sebaliknya
Multi-paradigmMendukung pemrograman berorientasi object, fungsional, dan prosedural
MultiplatformSatu kode dapat dikompilasi ke JVM, JS, Native, dan Android

Konsep null-safety, type inference, dan interoperable akan kita bedah tuntas pada chapter-chapter berikutnya; untuk sekarang, cukup pahami bahwa Kotlin mengurus banyak detail teknis supaya kita bisa fokus pada logika program.

Kode Kotlin Pertama #

Mari kita lihat wujud Kotlin yang paling sederhana. Simpan kode berikut sebagai file halo.kt, lalu kompilasi dan jalankan:

kotlin
fun main() {
    println("Halo, Kotlin!")
    val nama = "Budi"
    val tahunBelajar = 2026
    println("Saya $nama mulai belajar Kotlin pada $tahunBelajar")
}

Output yang Dihasilkan:

text
Halo, Kotlin!
Saya Budi mulai belajar Kotlin pada 2026

Mari kita telaah baris-baris kode di atas:

  1. Baris 1 (fun main() { ... }): keyword fun mendeklarasikan function. main adalah titik masuk program Kotlin. Tidak perlu membungkusnya dalam class seperti di Java.
  2. Baris 2 (println("Halo, Kotlin!")): function println mencetak teks ke layar diikuti newline. println adalah bagian dari standard library Kotlin.
  3. Baris 3 (val nama = "Budi"): keyword val mendeklarasikan variabel read-only. Kompilator menyimpulkan tipe String dari nilai "Budi" tanpa kita menyebutkannya.
  4. Baris 4 (val tahunBelajar = 2026): variabel tahunBelajar menyimpan bilangan bulat 2026. Tipe Int ditentukan kompilator dari nilai literal.
  5. Baris 5 (println("Saya $nama ...")): tanda $ di dalam string literal memicu string template — Kotlin akan mengganti $nama dengan nilai variabel nama saat mencetak.

Perhatikan bahwa tidak ada tanda titik koma di akhir baris, dan blok kode dibatasi oleh kurung kurawal {} mirip Java. Tidak seperti Python yang memakai indentasi, struktur kode Kotlin tetap mengandalkan kurung kurawal.

Mengapa Kotlin Banyak Dipilih #

Kotlin tidak menjadi populer hanya karena dipromosikan JetBrains dan Google. Bahasa ini menyelesaikan masalah nyata yang dihadapi developer Java sehari-hari: boilerplate get/set, null yang tidak terduga, dan lambdanya yang verbose. Dengan Kotlin, class data sederhana cukup ditulis satu baris:

kotlin Contoh: data class
data class Pengguna(val nama: String, val umur: Int)

Padanannya dalam Java memerlukan deklarasi field, constructor, getter, equals, hashCode, dan toString — totalnya sekitar 40 baris kode. Selisih ini akan terasa nyata ketika kita membangun aplikasi yang punya puluhan model domain.

Referensi Lanjutan #

Selanjutnya #

Dengan gambaran apa itu Kotlin, langkah berikutnya adalah memahami sejarah singkat Kotlin dan ekosistem yang menopangnya — materi yang akan kita bahas pada chapter Sejarah dan Ekosistem Kotlin.