Anda di halaman 1dari 27

Pemrograman Bergerak

Kotlin
For Java Programmer
Ramaditia D – rama@unram.ac.id V0.1
Kotlin
A modern programming language that makes developers happier
q Bahasa pemrograman Kotlin dikenalkan oleh Perusahaan JetBrains pada tahun
2011
q Awalnya berjalan di atas JVM.
q Kotlin di desain agar terintegrasi dengan Java.
q Android’s Kotlin-first approach. Di google I/O 2019, Android Developers
(Google) mengumumkan bahwa pengembagan Android akan semakin
mengutamakan Kotlin.
Mengapa Kotlin?
q Ekspresif dan ringkas: Anda dapat melakukan lebih banyak dengan lebih
sedikit.
q Kode yang lebih aman: Kotlin memiliki banyak fitur bahasa untuk membantu
Anda menghindari kesalahan pemrograman umum seperti pengecualian
penunjuk nol.
q Interoperable: Memanggil kode berbasis Java dari Kotlin, atau memanggil
Kotlin dari kode berbasis Java
q Konkurensi Terstruktur: Coroutine Kotlin membuat kode asinkron mudah
digunakan seperti kode pemblokiran.
Proses Development Program Kotlin
Kotlin: Hello World
Variable Declaration
val/var namaVariable : TipeData = data
Number: Karakter:

String:
Boolean:
Type inference
q Saat menetapkan nilai awal ke suatu variable, compiler Kotlin dapat menyimpulkan tipe data
berdasarkan tipe nilai yang diberikan.
q Kotlin adalah statically-type language. Ini berarti bahwa tipe diselesaikan pada waktu
kompilasi dan tidak pernah berubah.
Null Safety
q Dalam beberapa bahasa, variabel tipe referensi dapat dideklarasikan tanpa memberikan nilai
eksplisit awal.
q Dalam kasus ini, variabel biasanya berisi nilai null.
q Variabel Kotlin tidak dapat menyimpan nilai nol secara default.
q Kotlin menangani variabel nullable dengan hati-hati untuk menghindari error
NullPointerException

1 2
Array
q Tipe data array di Kotlin direpresentasikan dengan kata kunci Array
q Secara standard data di Array di Kotlin tidak boleh null
1

2
Tipe Data Range
q Kotlin mendukung tipe data range, yang digunakan untuk kebutuhan seperti ini
q Cara membuat range di Kotlin sangat mudah cukup menggunakan tanda “..” (titik
dua kali)
Operasi Range
Operasi Keterangan

count() Mendapatkan total data di range

contains(value) Mengecek apakah terdapat value tersebut

first Mendapatkan nilai pertama

last Mendapatkan nilai terakhir

step Mendapatkan nilai tiap kenaikan

2
Looping
q Proses perulangan hampir sama dengan Java. Kecuali di perulangan for yang dapat
menggunakan tipe data range.

1
2
Conditionals
q Kotlin memiliki beberapa mekanisme untuk mengimplementasikan logika kondisional.

4
Functions
q Untuk mendeklarasikan suatu fungsi, gunakan kata kunci fun diikuti dengan nama fungsi.
q Selanjutnya, tentukan tipe input yang digunakan (jika ada), dan nyatakan tipe output yang
dikembalikannya.

1 3

2 4
Simplifying function declarations
q Dapat dilakukan penyederhanaan deklarasi fungsi dalam beberapa kasus tertentu.
1

2
Function Varargs Parameter
q Parameter yang berada di posisi terakhir, memiliki kemampuan dijadikan sebuah varargs.
q Varargs artinya datanya bisa menerima lebih dari satu input, atau anggap saja semacam Array.

q Apa bedanya dengan parameter biasa dengan tipe data Array?


○ Jika parameter tipe Array, kita wajib membuat array terlebih dahulu sebelum
mengirimkan ke function
○ JIka parameter menggunakan varargs, kita bisa langsung mengirim data nya, jika lebih dari
satu, cukup gunakan tanda koma
Lamda Expression & Anonymous functions
q Tidak setiap fungsi membutuhkan nama. Beberapa fungsi lebih langsung diidentifikasi oleh
input dan outputnya.
q Fungsi-fungsi ini disebut Lamda Expression dan anonymous functions (Fungsi anonim).
q Dapat juga menyimpan referensi ke fungsi anonim, referensi ini digunakan untuk memanggil
fungsi anonim.

2
Higher-order functions
q Suatu fungsi dapat mengambil fungsi lain sebagai argumen.
q Fungsi yang menggunakan fungsi lain sebagai argumen disebut fungsi tingkat tinggi.
q Pola ini berguna untuk berkomunikasi antar komponen dengan cara yang sama seperti
callback interface di Java.

2 3
Classes
Contoh Deklarasi Kelas

Contoh Penggunaan Instance Class


Late-Initialized Properties
q Standarnya, properties di Kotlin wajib di inisialisasi di awal saat deklarasi properties tersebut
q Namun di Kotlin kita juga bisa menunda inisialisasi data para properties
q Dengan menggunakan kata kunci lateinit, kita bisa membuat properties tanpa harus langsung
mengisi datanya
q Kata kunci lateinit hanya bisa digunakan di var, tidak bisa digunakan di val
Data class
q Kotlin memiliki keyword “data” untuk suatu kelas yang hanya menyimpan data.
q Dengan menandai kelas ini sebagai kelas data, compiler akan secara otomatis membuat
getter dan setter. Itu juga akan menurunkan fungsi equals(), hashCode(), dan toString().

Contoh penggunaan:
Destructuring
q Kotlin memungkinkan destrukturisasi objek menjadi sejumlah variabel,
menggunakan sintaks yang disebut deklarasi destrukturisasi.
q Kami membuat banyak variabel dan dapat menggunakannya secara mandiri.
Sebagai contoh, kelas data mendukung destrukturisasi sehingga kita dapat
mengubah struktur objek User (pada contoh sebelumnya) dalam loop for
menjadi (FirstName, LastName).
q Ini memungkinkan kita untuk bekerja secara langsung dengan nilai firstName
dan lastName.
Contoh Destructuring
Elvis Operator
q Operator elvis (?:) akan mengembalikan ekspresi di sisi kirinya jika tidak nol, atau ekspresi di
sisi kanannya, jika sisi kirinya nol.
q Contoh: Dalam kode berikut, firstName dikembalikan jika bukan null. Jika firstName adalah
null, ekspresi mengembalikan nilai di sebelah kanan , "Unknown":
Inheritance
q Semua kelas di Kotlin memiliki superclass yang sama, Any, yang merupakan superclass default
untuk kelas tanpa supertipe. (gambar 1)
q Secara default, class Kotlin bersifat final – class tersebut tidak dapat diwariskan. Untuk membuat
kelas dapat diwarisi, tandai dengan kata kunci open. (gambar 2)
q Untuk mendeklarasikan supertipe eksplisit, tempatkan tipe setelah titik dua di header kelas
(gambar 3)
q Jika kelas turunan memiliki konstruktor utama, kelas dasar dapat (dan harus) diinisialisasi dalam
konstruktor utama tersebut sesuai dengan parameternya. (gambar 4)
1
4

3
Konversi Kode Java Ke Kotlin
q Android Studio dapat melakukan pekerjaan yang cukup baik untuk secara otomatis
mengonversi kode Java menjadi kode Kotlin tetapi terkadang memerlukan sedikit perbaikan.
q Caranya adalah dengan memilih file code yang akan dikonversi dan pilih menu berikut: Menu
bar -> Code -> Convert Java File to Kotlin File.

Notifikasi konversi
Referensi
q Android Developers. Kotlin for Java Developers.
q Kotlinlang.org.
q Programmer Zaman Now. 2020. “Belajar Kotlin Dasar”.
YouTube. https://www.youtube.com/playlist?list=PL-CtdCApEFH_hja5vRJgQOXylCiQud7Qa

Anda mungkin juga menyukai