Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Android Studio

Membuat Aplikasi Android Functional di Kotlin: Persiapan

by
Difficulty:BeginnerLength:LongLanguages:
This post is part of a series called Coding Android Apps in Kotlin.
Java vs. Kotlin: Should You Be Using Kotlin for Android Development?
Coding Functional Android Apps in Kotlin: Lambdas, Null Safety & More

Indonesian (Bahasa Indonesia) translation by Imam Firmansyah (you can also view the original English article)

Meskipun sebagian besar aplikasi android dibuat dengan menggunakan bahasa pemrograman Java, tidak ada aturan bahwa harus menggunakan Java untuk pengembangan aplikasi Android. Ada berbagai bahasa pemrograman modern yang didesain untuk dapat dijalankan pada Java Vitual Machine(JVM), dan salah satu yang akan menjadi populer pada komunitas Java adalah Kotlin.

Pada bagian pertama dari 3 bagian ini, kami melihat apa itu Kotlin dan apa yang ditawarkan Kotlin dalam pengembangan Aplikasi Android:

  • 100% dapat dipetukarkan dengan Java, sampai pada titik dimana kita bisa menggunakan Java libraries dan frameworks, dan bahkan dapat menggabungkan Java dan Kotlin pada project android anda.
  • Sintaksnya dirancang sangat mirip dengan Java, itu berarti cukup mudah bagi pengembang Java untuk memahami dasar-dasar Kotlin.
  • Menggabungkan fitur dan konsep dari pemrograman fungsional dan prosedural.
  • Didukung dengan baik oleh Android Studio

Dalam tutorial lanjutan ini, kita akan memulai pengembangan Kotlin yang sebenarnya.  Pada akhir tutorial, anda akan dapat menciptakan aplikasi android sederhana yang menampilkan sebaris teks dan itu ditulis menggunakan Kotlin.  Anda juga akan tahu bagaimana menghindari menulis findViewById, dengan memanfaatkan Kotlin Android Extensions.

Tapi yang paling utama, ini adalah saatnya untuk mengajarkan lingkungan kita bagaimana cara berbicara dengan bahasa baru!

Menginstal plugin Kotlin di Android Studio

Hal pertama yang perlu Anda lakukan adalah menambahkan Kotlin support ke instalasi Android Studio Anda.

Sebelum memulai, pastikan Anda menjalankan Android Studio versi terbaru dan stabil, karena Anda lebih cenderung menemukan bug dengan Kotlin plugin di versi eksperimental Android Studio. Sebaiknya juga membuka SDK Manager dan memeriksa apakah pembaruan tersedia untuk semua paket yang telah terpasang.

Setelah yakin bahwa lingkungan pengembangan sudah up-to-date, Anda sudah siap memasang plugin Kotlin. Jalankan Android Studio dan Anda akan melihat jendela Welcome to Android Studio jika jendela ini tidak muncul, tutup Android Studio sepenuhnya dan jalankan kembali.

Klik icon Configure, dan pilih Plugins pada menu dropdown yg muncul.

Open Android Studios Configure Plugins menu

Klik tombol Install JetBrains plugins...

Install the Kotlin for Android Studio plugin

Pilih Kotlin pada menu tersebut, dan klik tombol Install berwarna hijau.  Kamu perlu merestart IDE sebelum mengaktifkan plugin Kotlin, jadi klik tombol Restart Android Studio yang muncul atau restart IDE anda secara manual.

Konfigurasi Project untuk menggunakan Kotlin

Pada kondisi ini, IDE dapat memahami dan manjalankan kode Kotlin, tapi kamu perlu mengkonfigurasi Kotlin setiap kali ingin menggunakanya pada project baru. Mari buat proyek baru dan konfigurasikan proyek itu untuk menggunakan Kotlin sekarang. Buat proyek baru dengan pengaturan pilihan Anda, namun untuk tujuan kesederhanaan, pilih Empty Activity saat diminta.

Berkat plugin Kotlin, mengonfigurasi sebuah proyek untuk menggunakan Kotlin tidak bisa lebih sederhana: cukup pilih Tools pada toolbar Android Studio, diikuti oleh Kotlin dan Configure Kotlin in Project.

Select Android Studios Tools Kotlin Configure Kotlin in Project option

Ini adalah popup dimana kamu bisa memilih konfigurasi Kotlin untuk:

  • Semua module
  • Semua modul yang berisi file Kotlin
  • atau sebuah modul tunggal yang bernama

Karena saya hanya akan menggunakan kode Kotlin dalam proyek saya, saya memilih All modules.  Anda juga bisa memilih versi Kotlin yang ingin anda gunakan, ini akan menjadi versi terbaru.

Sebagai alternatif, Anda dapat mengkonfigurasi Kotlin dengan memilih Help dari menu bar di Android Studio, diikuti dengan Find Action… Pada bagian Find Action, mulailah mengetik Configure Kotlin in Project, lalu pilih opsi ini saat muncul.

Opsi pada Configure Kotlin in Project membuat sejumlah tweak pada project file build.gradle, jadi mari kita lihat lebih dekat bagaimana file-file ini telah berubah.  Buka project-level file build.gradle — maka seharusnya terlihat seperti ini:

Sekarang, mari kita lihat tingkat modul file build.gradle anda:

Akhirnya, sinkronkan perubahan Anda dengan mengeklik Sync Now dari popup yang muncul atau dengan mengklik icon Sync Project with Gradle Files pada toolbar Android Studio.

Mengubah file Java menjadi Kotlin

Salah satu fitur plugin Kotlin yang sangat berguna bagi pendatang baru Kotlin adalah kemampuannya untuk mengonversi source file Java ke Kotlin, sekaligus menjaga kompatibilitas runtime secara penuh.

Mampu melihat dengan pasti bagaimana setiap file Java akan diterjemahkan ke dalam Kotlin yang sangat ideal untuk membantu Anda mempelajari bahasa ini, tapi juga bisa berguna sepanjang pengalaman anda menggunakan Kotlin, jika Anda pernah berjuang untuk menyelesaikannya bagaimana menulis sesuatu di Kotlin, Anda selalu bisa menuliskannya di Java dan kemudian menggunakan fitur ini untuk mengubah kode itu menjadi Kotlin.

Mari kita ubah proyek kita MainActivity file menjadi Kotlin source file. Ada dua cara untuk mengenalkan aksi Convert Java File to Kotlin File, antara lain:

  • Pilih file MainActivity, dan kemudian pilih Code dari menu bar Android Studio’s, diikuti dengan Convert Java File to Kotlin File.

Convert your existing Java file into a Kotlin file by selecting Code Convert Java File to Kotlin File
  • Atau pilih Help pada menu bar Android Studio, diikuti dengan Find Action. Pada popup yang muncul ketiklah Convert Java file to Kotlin file dan kemudian pilih opsi ini saat muncul. Perhatikan, Anda juga bisa menjalankan popup Find Action dengan keyboard shortcut: Jika kamu menggunakan mac, silakan tekan tombol Command-Shift-A,dan jika kamu menggunakan Windows atau Linux silakan tekan Control-Shift-A.

Sadarilah bahwa, tergantung pada kompleksitas kode Anda, konversi mungkin tidak selalu 100% akurat, jadi Anda harus selalu memeriksa kesalahan kode yang dikonversi.

MainActivity anda yang baru dikonversi akan terlihat seperti ini:

Anda juga akan melihat bahwa ekstensi file telah berubah, berubah dari MainActivity.java menjadi MainActivity.kt.

Ini mungkin merupakan Activity sederhana, tetapi beberapa baris ini menggambarkan beberapa karakteristik kunci sintaks Kotlin. Karena ini adalah tampilan pertama kami pada beberapa kode Kotlin yang sebenarnya, ayo pilih class ini terpisah baris demi baris.

Memahami Sintaks Kotlin

Di Kotlin, Anda mendeklarasikan class menggunakan kata kunci, class, persis seperti di Java.  Namun, di Kotlin, class (dan method) bersifat publik dan final secara default, sehingga Anda bisa membuat class hanya dengan menulis class MainActivity.

Ketika sampai memperluas class, anda menggantikan Java extends dengan titik dua, dan kemudian melampirkan nama dari parent class. Jadi, pada baris pertama file MainActivity.kt, kita membuat class umum dan akhir yang disebut MainActivity yang memperluas AppCompatActivity:

Pada Java setara dengan

Jika Anda ingin mengganti class atau method, Anda harus secara eksplisit menyatakannya sebagai terbuka atau abstrak.

Di Kotlin, fungsi didefinisikan menggunakan kata kunci fun, diikuti oleh nama fungsi dan parameter dalam tanda kurung. Di Kotlin, nama fungsi itu ada sebelum jenisnya:

Ini adalah kebalikan dari Java, di mana tipe datang sebelum nama:

Perhatikan bahwa kami tidak menentukan metode ini bersifat final, seperti dalam Kotlin semua metode bersifat final secara default.

Sisa dari Aktivitas ini terlihat sangat mirip dengan Java.  Namun, beberapa baris ini menggambarkan karakteristik kunci Kotlin yang lain:

Di Kotlin, Anda tidak perlu menyelesaikan baris Anda dengan tanda titik koma, maka tidak adanya titik dua pada snippet di atas. Anda dapat menambahkan titik koma jika Anda benar-benar ingin, tapi kode Anda akan lebih bersih dan mudah dibaca tanpa titik koma.

Sekarang, kita dapat menguraikan file MainActivity.kt, mari kita pindah ke bagian home yang semestinya. Karena plugin Kotlin mengalami kesulitan menambahkan deklarasi src/main/kotlin ke file build.gradle, maka kita harus membuat direktori ini. Langkah ini tidak wajib, tapi tetap menyimpan file Kotlin Anda di direktori khusus akan membuat proyek yang lebih bersih.

Di Project Explorer Android Studio's, Control-click pada project anda, pilih Main directory dan pilih New dari menu yang tampil, diikuti dengan Directory. Beri nama direktori dengan nama kotlin adan klik OK.

Create a dedicated Kotlin directory

Jika Anda sedang berjuang untuk melihat direktori main pada proyek utama Anda, buka dropdown kecil di kiri atas Project Explorer dan pilih Project. Anda seharusnya tidak memiliki masalah saat melihat direktori src/main yang sulit dipahami.

Open Android Studios Project Explorer menu and select Project

Setelah anda membuat direktori khusus Kotlin, drag file MainActivity.kt anda kedalamnya.  Pastikan untuk mempertahankan nama paket file MainActivity.kt agar proyek Anda tetap berjalan.

Juga, jika Anda hanya akan menggunakan Kotlin dalam proyek ini, dan mungkin ingin menghapus direktori Java, daripada mengacaukan proyek anda dengan direktori kosong dan tidak perlu.

Karena Kotlin mengkompilasi bytecode, sebuah aplikasi yang ditulis di Kotlin terasa sama persis dengan aplikasi yang ada di Java, jadi coba pasang aplikasi ini di perangkat Android Anda atau AVD yang kompatibel - seharusnya merasa tidak ada yang berubah

Membuat File Kotlin Tambahan

Jika Anda terus bekerja dengan Kotlin dalam proyek Anda, maka cepat atau lambat Anda akan perlu mulai membuat file Kotlin baru daripada mengubah yang ada di Java.

Untuk membuat Kotlin File, Control-click pada direktori app/src/main/kotlin dan pilih select New > Kotlin Activity.

Create a new Kotlin Activity by selecting your Kotlin directory and clicking New Kotlin Activity

Berikan nama pada class anda dan pilih class pada dropdown menu. Class baru anda akan terlihat seperti ini:

Pada titik ini, Aktivitas anda kosong. Untuk sampai pada titik di mana anda dapat mulai menambahkan beberapa fungsi nyata, anda harus menyelesaikan beberapa langkah.  Pertama, tambahkan pernyataan import yang ingin anda gunakan. Satu-satunya perbedaan antara pernyataan impor di Kotlin dan pernyataan impor di Java adalah anda tidak perlu menyelesaikan setiap baris dengan titik koma. Sebagai contoh:

Anda kemudian harus menentukan class yang anda gunakan, menggunakan format yang sama seperti yang kami lihat pada file MainActivity.kt :

Selanjutnya, anda perlu mangganti aktifitas pada method onCreate:

Sekarang anda dapat menambahkan fungsi apa pun yang anda inginkan ke Aktivitas ini (dan di bagian berikutnya, saya akan menunjukkan cara menggunakan ekstensi Kotlin untuk memanipulasi widget UI, jadi ini mungkin tempat yang baik untuk memulai), namun satu penyiapan terakhir yang perlu anda selesaikan adalah menyatakan Aktivitas Kotlin anda dalam Manifest anda.  Ini mengikuti formula yang sama persis dengan menyatakan Aktivitas baru Java, misalnya:

Ekstensi Kotlin Android: Selamat Tinggal Untuk findViewById

Sekarang setelah kita menguasai dasar-dasarnya, mari kita lihat lebih dekat pada apa yang benar-benar bisa dilakukan Kotlin-dimulai dengan fitur yang benar-benar dapat mengurangi jumlah kode boilerplate yang perlu anda tulis.

Di Android, setiap kali anda ingin bekerja dengan View pada Activity, anda perlu menggunakan method findViewById untuk mendapatkan referensi ke View tersebut. Hal ini membuat findViewById salah satu yang paling penting, tapi juga salah satu potongan kode yang paling menyebalkan yang akan anda temukan berulang kali pada Android project anda Method findViewById adalah sumber bug potensial yang besar, dan jika anda bekerja dengan beberapa elemen UI dalam Aktivitas yang sama, maka semua findViewById dapat benar-benar mengacaukan kode Anda, sehingga sulit untuk dibaca.

Meskipun ada beberapa libraries, seperti Butter Knife, yang bertujuan untuk menghapus kebutuhan akan findViewById, libraries ini tetap meminta anda untuk memberi keterangan pada bidang untuk setiap Tampilan, yang dapat menyebabkan kesalahan dan masih terasa seperti banyak usaha yang akan dilakukan. Lebih baik diinvestasikan di area lain dari proyek anda.

Plugin Android Kotlin (yang baru saja dimasukkan ke dalam plugin Kotlin standar) menjanjikan untuk membuat findViewById sesuatu dari masa lalu, menawarkan manfaat dari pustaka tersebut di atas tanpa kekurangan karena harus menulis kode tambahan atau mengirimkan runtime tambahan.

Anda dapat menggunakan ekstensi Kotlin untuk mengimpor referensi View ke dalam source file anda. Pada titik ini, plugin Kotlin akan menciptakan satu "synthetic properties" yang memungkinkan anda bekerja dengan pandangan ini seolah-olah mereka adalah bagian dari aktivitas anda - yang paling penting, ini berarti anda tidak lagi harus menggunakan findViewById untuk menemukan setiap View sebelum anda dapat bekerja dengan itu.

Untuk menggunakan ekstensi, anda harus mengaktifkan plugin Kotlin Android Extensions di setiap modul, jadi buka file build.gradle dan tambahkan yang berikut ini:

Sinkronkan perubahan ini dengan mengklik popup Sync Now.

Anda kemudian dapat mengimpor satu referensi ke View, dengan menggunakan format berikut:

Misalnya, jika file acitivity_main.xml anda berisi TextView dengan ID textView1, anda akan mengimpor referensi ke tampilan ini dengan menambahkan yang berikut ke Activity anda:

Anda kemudian dapat mengakses textView1 dalam aktivitas ini menggunakan ID-nya sendiri-dan tanpa melihat findViewById!

Mari kita lihat ekstensi dalam tindakan, dengan menambahkan TextView ke file activity_main.xml, mengimpornya ke file MainActivity.kt, dan menggunakan ekstensi untuk mengatur text TextView secara terprogram.

Mulailah dengan membuat TextView anda:

Anda kemudian dapat mengimpor TextView ke MainActivity.kt, dan mengatur teksnya hanya dengan ID:

Perhatikan, jika anda ingin bekerja dengan beberapa widget dari file tata letak yang sama, anda dapat mengimpor seluruh isi file tata letak dalam satu gerakan, dengan mengikuti formula berikut:

Misalnya, jika anda ingin mengimpor semua widget dari file activity_main.xml, maka anda akan menambahkan berikut ini ke Aktivitas anda:

Kesimpulan

Pada tahap kedua ini, kami membahas pengaturan lingkungan pengembangan anda untuk mendukung Kotlin, dan melihat betapa mudahnya mengubah kode Java anda yang ada menjadi Kotlin. Kami juga melihat beberapa karakteristik utama dari sintaks Kotlin, dan memperkenalkan ekstensi Kotlin Android ke dalam proyek kami.

Dalam tahap ketiga dan terakhir, kita akan melihat beberapa fitur lanjutan dari bahasa Kotlin yang sebagai pengembang Android, anda seharusnya merasa sangat berguna.

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.