kotlin
merupakan Bahasa Pemrograman modern yang
bersifat statically-typed yang
dapat di jalankan di atas platform Java Virtual Machine (JVM).
Kotlin juga dapat di kompilasi (compile)
ke dalam bentuk JavaScript. Lalu, siapakah tim di balik pengembangan bahasa
tersebut? ya, tidak lain adalah JetBrains yang juga mengembangkan salah satu tools pemrograman (IDE) yang saat ini di
adopsi oleh google untuk di
gunakan sebagai tools pengembangan
aplikasi di Android (Android Studio).
Lalu, apa saja sih kelebihan dari kotlin
tersebut dibandingkan dengan bahasa pemrogaman lainnya (dalam hal ini Java) ?
Jika kita lihat dari penjelasan yang tertulis pada website kotlin, maka dapat di simpulkan ke dalam
poin-poin berikut ini;
·
Concise :
Kotlin mampu mengurangi boilerplate of
code atau tingkat kerumitan dari kode yang biasa kita tulis, ketika
menggunakan bahasa Java
·
Safe :
Kotlin mampu menjamin bahwa setiap syntax yang
kita tulis secara proses kompilasi dapat mencegah kemungkinan terjadinya error, misalnya mampu mencegah terjadinya NullPointerExceptions ketika kita coding menggunakan bahasa Java
·
Versatile :
Kotlin sejatinya sama seperti Java, karena memang kotlin itu sendiri di
turunkan dari bahasa induknya, yaitu Java. Sehingga kotlin juga dapat di pakai
dalam pengembangan aplikasi di Web maupun Mobile
·
Interoperable :
Kotlin tidak sama seperti
bahasa Java turunan lainnya (misal; Scala ataupun Clojure) yang tidak dapat
dijalankan bersamaan dengan kode yang kita tulis menggunakan Java. Kotlin mampu
membaca kode lama atau library yang
kita gunakan atau kita tulis dengan bahasa Java dan begitupun sebaliknya
Keistimewaan Kotlin
Saat mengeksplorasi bahasa pemrograman
baru tentunya hal yang pertama kali menjadi sorotan adalah fitur-fitur keren
apa saja yang ditawarkan, namun kita akan membahasnya nanti; karena fitur
pemrograman hanya memiliki impact kecil dibandingkan dengan
permasalahan ekosistem.
Daya tarik terkuat yang dimiliki Kotlin
adalah hasil kompilasinya dalam bentuk bytecode JVM atau
Javascript. Selain itu Kotlin ini dibuat oleh praktisi industri, bukan dari
pihak akademis, sehingga lebih memahami kebutuhan yang diperlukan. Misalnya
permasalahan umum seperti Null Pointer Exception yang sudah
ditambahkan pada bahasa pemrograman ini. Dan pertimbangan terakhir yaitu,
Kotlin tidak memerlukan cost untuk diadopsi, dengan dukungan
mumpuni dari JetBrains, semua kode Java dapat langsung dikonversi ke dalam kode
Kotlin hanya dengan satu klik, ditambah lagi 100% interoperable dengan
pustaka pihak ketiga Java yang sangat kaya.
Mempelajari bahasa Kotlin tidak
memerlukan learning curve yang lama, cukup beberapa jam saja
untuk memahami dialek bahasa yg digunakan; karena memang adanya Kotlin sangat
sederhana, bisa dikatakan Kotlin merupakan Swift-nya Android.
Fitur Unggulan Kotlin
Bahasa
pemrograman yang relatif baru ini mengedepankan produktifitas, oleh sebab itu
Kotlin hadir dengan fitur-fitur yang memudahkan dalam pembuatan kode program.
Berikut ini fitur-fitur manis tersebut:
·
Aman dari Null, seperti yang sudah disebutkan diatas,
tidak perlu lagi menghawatirkan kemungkinan timbulnya Null Pointer
Exception. Compiler secara sistematis akan menandai pointer yang
berpotensi null.
·
Pemrograman Fungsional, mendukung lambda dan
kemampuan mapping, folding, pada Collection Java.
·
Anotasi Data yang otomatis dibuat untuk
mengurangi boilerplate; seperti equals, hashCode, toString.
·
Syntax Ramping, yang menawarkan penulisan syntax secara
cepat. Membuat fungsi one-liner, membuat Java Beans hanya dengan
satu baris, method setter dan getter otomatis.
·
Ekstensi Fungsi yang memungkinkan
untuk menambahkan method pada class tanpa
harus mengubah source code-nya.
·
Interpolasi String yang memungkinkan
untuk memasukkan variabel ke dalam String tanpa penyambungan seperti pada
EcmaScript.
·
Masih
banyak lagi, penamaan argumen, parameter opsional, default value untuk
parameter.
Persiapan Pengembang
Kebutuhan
yang perlu disiapkan untuk pengembangan aplikasi Android dengan Kotlin adalah
sebagai berikut:
·
Android
Studio 2.2+
·
Gradle
2.2+
·
Plugin
Kotlin 1.0.6+
Buatlah projek Android baru seperti
biasa, kemudian atur konfigurasi Gradle. Tambahkan kode di bawah ini
untuk project level build.gradle:
buildscript {
ext.kotlin_version = '1.0.6'
dependencies {
classpath
'com.android.tools.build:gradle:2.2.3'
classpath
"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
Kemudian tambahkan juga kode berikut
untuk module level build.gradle:
apply plugin:
'com.android.application'
apply plugin: 'kotlin-android'
apply plugin:
'kotlin-android-extensions'
///
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
Menulis Program Android Pertama
Setelah
konfigurasi diatas telah dibuat dan Gradle sudah selesai disinkronisasi,
ubahlah layout pada resource folder yang telah dibuat oleh IDE menjadi seperti
di bawah ini:
<?xml version="1.0"
encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.bibitnomic.codepolitan.MainActivity"
android:orientation="vertical">
<TextView
android:text="Ketik nama anda
"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textPersonName"
android:text="Nama"
android:ems="10"
android:id="@+id/field_nama"
/>
<Button
android:text="Sapa Saya!"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tombol_sapa"
/>
</LinearLayout>
Untuk
MainActivity yang juga sudah dibuat otomatis, akan tampak seperti kode di bawah
ini:
package com.bibitnomic.codepolitan;
import
android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends
AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(com.putraxor.codepolitan.R.layout.activity_main);
}
}
Untuk
mengubahnya ke dalam kode Kotlin, silahkan pilih menu:
[Code > Convert Java To
Kotlin] atau tekan [Ctrl+Alt+Shift+K]
Kemudian
setelah kode tersebut diubah ke dalam bahasa pemrograman Kotlin, lakukan
modifikasi seperti di bawah ini:
package com.putraxor.codepolitan
import android.os.Bundle
import
android.support.v7.app.AppCompatActivity
import android.view.View
import android.widget.Toast
import
kotlinx.android.synthetic.main.activity_main.*
class MainActivity :
AppCompatActivity(), View.OnClickListener {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(com.putraxor.codepolitan.R.layout.activity_main)
tombol_sapa.setOnClickListener(this)
}
override fun onClick(v: View) {
if (v.id == R.id.tombol_sapa) {
var nama =
field_nama.text.toString()
Toast.makeText(this, "Halo
$nama, selamat belajar Kotlin", Toast.LENGTH_SHORT)
}
}
}
sumber: https://www.codepolitan.com/memulai-pengembangan-aplikasi-android-dengan-kotlin-58ad44cf5ae0c
0 Komentar