Kotlin. Lihatlah betapa cantiknya ia. Sebagai perbandingan, lihatlah kode berikut:

Perbandingan 1

Java:

  1. int count; 
  2. if (adapter != null) 
  3. count = adapter.getSelectedItemCount(); 
  4. else 
  5. return; 

Kotlin:

  1. val count = adapter?.selectedItemCount ?: return 

Berapa baris yang dihemat Kotlin?

Perbandingan 2

Java:

  1. BaseActivity a = (BaseActivity) context; 

Kotlin:

  1. val a = context as BaseActivity 

Lihatlah bagaimana Kotlin melakukan casting pada sebuah objek.

Perbandingan 3


Baca Juga : Belajar Bahasa Program Dulu ata Konsep Dulu

Java:

  1. public String getActionName(String action) { 
  2. if (action != null) { // null check 
  3. switch (action) { 
  4. case "+":  
  5. return "Penambahan"; 
  6. case "-": 
  7. return "Pengurangan"; 
  8. } 
  9. } 
  10. return "Tidak diketahui"; 
  11. } 

Kotlin:

  1. fun getActionName(action: String?): String = 
  2. // tidak diperlukan null check 
  3. when (action) { 
  4. "+" -> "Penambahan" 
  5. "-" -> "Pengurangan" 
  6. else -> "Tidak diketahui" 
  7. } 

Perbandingan 4

Java:

  1. if (text != null && text.trim().length() > 0) 
  2. System.out.println("Teks tidak kosong"); 

Kotlin:

  1. if (!text.isNullOrBlank()) 
  2. println("Teks tidak kosong") 

Lihat, betapa mudahnya memeriksa apakah teks kosong atau tidaknya.

Perbandingan 5

Java:

  1. if (number > 0 && number < 100) 
  2. System.out.println("Angka berada dalam rentang 1 - 99"); 

Kotlin:

  1. if (number in 1..99) 
  2. println("Angka berada dalam rentang 1 - 99") 

Memeriksa rentang sebuah nilai integer sangat mudah, bukan?

Perbandingan 6

Baca Juga : Apakah wordpress bisa menghantikan pungsi frontend


Java:

  1. if (post != null) { 
  2. post.id = 2; 
  3. post.title = "This is title"; 
  4. } 

Kotlin:

  1. post?.run { 
  2. id = 2 
  3. title = "This is title" 
  4. } 

Bagaimana fitur Null checker-nya?

Perbandingan 7

Java:

  1. for (int i = 0; i < sparse.size(); i++) { 
  2. Object o = sparse.get(sparse.keyAt(i)); 
  3. System.out.println("Nilai: " + o.toString()); 
  4. } 

Kotlin:

  1. sparse.forEach { key, value -> println("Nilai: $value") } 

Hanya satu baris kan?

Perbandingan 8

Apakah kamu melihat titik koma dalam penulisan kode Kotlin di atas? Ya, Kotlin tidak memerlukan titik koma seperti Java, C, dan PHP.

Perbandingan 9

Untuk keluar dari loop terluar dalam pengulangan foreach bertingkat, dengan kode Java berikut akan kesulitan diwujudkan:

  1. for (Item outer : outerList) { 
  2. for (Item inner : innerList) { 
  3. for (Sub sub : subList) { 
  4. // bagaimana cara melakukan "break" pada loop outer? 
  5. // Akibatnya di sini akan muncul kode spageti yang ribet. 
  6. } 
  7. } 
  8. } 

Kemudian lihat bagaimana Kotlin melakukan itu:

  1. outerList.forEach outerLabel@ { 
  2. innerList.forEach { 
  3. subList.forEach { 
  4. // menghentikan semua perulangan, termasuk perulangan outer 
  5. return@outerLabel 
  6. } 
  7. } 
  8. } 

Sebagai penutup, bandingkan berapa baris yang dihemat Kotlin pada class Person berikut:

Sumber gambar: Hackernoon.com

Sebenarnya masih banyak kelebihan Kotlin yang lain. Tapi saya capek mengetik. Segini dulu yah.

Selamat Membaca Salam sukses

“RSN”

Leave a Reply

Your email address will not be published. Required fields are marked *