Developer Stories View Binding; Membuat Aplikasi Android menjadi Lebih Paten , Bukan Kaleng-kaleng!

View Binding; Membuat Aplikasi Android menjadi Lebih Paten , Bukan Kaleng-kaleng!


Pada Februari 2020, Android Studio merilis versi terbarunya, yaitu Android Studio 3.6. Pada versi terbarunya ini, ada hal spesial yang sudah ditunggu-tunggu oleh para Android Developer, yaitu View Binding. Wah, kenapa View Binding menjadi spesial? Ini karena View Binding memiliki banyak sekali manfaat untuk kita pada saat men-develop aplikasi Android agar menjadi lebih paten dan bukan kaleng-kaleng.

Apa Itu View Binding?

Sebelumnya, mungkin teman-teman belum mengetahui apa itu View Binding? View Binding adalah fitur yang dapat membantu kita agar lebih mudah untuk berinteraksi dengan View yang ada pada Layout XML kita (contohnya findViewById, Kotlin Synthetic, dan lain-lain).

Kelebihan View Binding Dibandingkan Teknologi Sebelumnya

Oke, mari kita kembali ke pengumuman Google I/O 2019 tahun kemarin, saat pertama kali View Binding diumumkan dan disebutkan memiliki banyak keunggulan dibandingkan teknologi mengakses view sebelumnya.

Perbandingan Cara Mengakses View dari Google I/O 2019

Nah, yang tanda tanya itu adalah View Binding. Wow, semua diborong oleh View Binding. ?

View Binding Menggantikan findViewById

View Binding benar-benar menggantikan findViewById. Hal tersebut karena dengan View Binding (dibandingkan findViewById), kita akan sangat mengurangi boilerplate dan membuat kode kita menjadi safe (karena setiap kali View dibuat di XML, otomatis View Binding akan meng-generate View tersebut dan kita langsung bisa menggunakannya dengan id yang tepat.

Di bawah ini adalah contoh kode perbandingan apabila kita menggunakan findViewById dan View Binding.

Contoh findViewById

Contoh View Binding

Nah, terlihat, kan, bagaimana perbedaannya? Saat kita menggunakan findViewById, kita perlu membuat variable untuk view yang ingin kita gunakan dan memanggil id yang tepat. Hal ini akan membuat kode kita menjadi panjang dan bisa jadi id yang kita panggil tidak berada di XML yang kita gunakan (itu malah dapat mengakibatkan null saat mengakses View dan bisa membuat force close pada aplikasi kita).

Sangat berbeda dengan View Binding. Memakai View Binding, kita hanya perlu membuat satu variable untuk mengambil binding layout yang ingin kita gunakan. Dengan itu, kita sudah dapat mengakses semua view yang ada di XML tersebut. Selain itu, kita juga mendapatkan keunggulan View Binding, yakni View yang kita akses pasti safe (karena di dalam binding setiap View sudah dibuat null safety-nya agar tidak akan terjadi null saat mengakses View).

View Binding bukan kaleng-kaleng, kan? Hayo, udah, View Binding aja. ?

Bagaimana View Binding Bekerja?

Cara Kerja View Binding

Jadi, saat kita menggunakan View Binding, semua layout yang kita miliki otomatis akan di-generate oleh Android Studio menjadi file binding. Di dalam file binding, semua View yang ada di dalam layout tersebut dibuatkan variable findViewById. Itulah mengapa kita dapat mengakses semua View yang ada di layout tersebut. Teman-teman bisa mengecek file binding yang berada pada folder databinding di proyek Android kalian.

Cara Menggunakan View Binding

Hal pertama yang harus dilakukan adalah mengecek versi Android Studio yang dimiliki teman-teman. Apakah sudah versi terbaru Android Studio sekarang? Minimal Android Studio 3.6 dan Android Gradle Plugin 3.6 atau di atasnya. Apabila sudah, sila ikuti langkah di bawah ini.

  1. Setting enable View Binding di dalam build.gradle

Untuk dapat menggunakan View Binding, cukup setting enable View Binding pada build.gradle. Teman-teman otomatis dapat menggunakan View Binding. Dengan ini, setiap ada layout XML, otomatis akan di-generate oleh Android Studio menjadi file binding.

android {
  ...
  viewBinding {
    enabled = true
  }
}

Setelah diatur, sila sync dan build proyek.

2. Menggunakan View Binding pada Activity

Pada Activity, kita harus membuat variable binding terlebih dahulu. Untuk membuat variable binding, cukup panggil nama file binding yang berformat nama layout xml misalkan activity_main.xml, maka menjadi MainActivityBinding (nama dibalik dan tambahkan binding di belakangnya).

Membuat Variable Binding

3. Mengakses View dengan View Binding

Setelah kita sudah membuat variable dan mengisinya dengan binding layout yang kita pilih, maka kita sudah bisa mengakses semua View yang ada di dalam layout tersebut. Kita juga dapat langsung menggunakannya, dengan cara seperti ini.

Akses View Paling Paten Bukan Kaleng-kaleng

Mencegah View Binding Generate XML yang Tidak Kita Inginkan

Mungkin teman-teman tidak ingin meng-generate XML tertentu karena alasan suatu hal. Nah, kita bisa menambahkan kode berikut ini.

tools:viewBindingIgnore="true"

Tambahkan pada root view layout; contohnya seperti ini.

<LinearLayout
        ...
        tools:viewBindingIgnore="true" >
    ...
</LinearLayout>

Maka, layout XML teman-teman tidak akan di-generate oleh Android Studio dan untuk layout tersebut teman-teman tidak bisa menggunakan View Binding.

Penutup

Itu saja untuk artikel paten bukan kaleng-kaleng kali ini. Semoga teman-teman mendapat pengetahuan baru tentang View Binding dan bisa menggunakannya pada aplikasi, agar membuat aplikasi teman-teman menjadi lebih paten bukan kaleng-kaleng. Keep learning and never give up. ❤️

Pesan terakhir, karena lagi musim Corona, Stay Safe, Stay Healthy and Stay at Home. See you!


Contoh View Binding, findViewById, Kotlin Synthetic: https://github.com/firdaus1453/ViewBindingExample

Dokumentasi View Binding: https://developer.android.com/topic/libraries/view-binding


Muhammad Firdaus adalah salah satu Android developer di GITS Indonesia.


Ketahui lebih lanjut mengenai salah satu mobile aplikasi yang dibuat GITS Indonesia untuk Sarihusada–bagian dari Danone, di sini.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

More articles

Latest article

GITS Tech Talk: Real World Case of Project Management

Dibalik keberhasilan suatu proyek, terdapat proses yang cukup panjang. Dalam proses tersebut, misalnya terjadi rangkaian perubahan dan ada kendala yang harus dihadapi.

GITS Webinar: Adopting DevOps as Culture

GITS Webinar hadir kembali! Kali ini, kita akan membahas tentang DevOps. DevOps bisa dibilang sebagai culture suatu company dalam...

Sales dan Marketing Budgeting untuk 2021

Dalam menjalankan bisnis perusahaan, membuat sales budgeting dan marketing budgeting adalah hal penting. Ini untuk merencanakan dan mengelola kinerja keuangan dengan ketat....

Menciptakan Organisasi Pembelajaran/Learning Organization, juga bagi Digital Agency Jakarta

Dalam sebuah perusahaan, juga digital agency Jakarta misalnya, kedinamisan adalah hal yang mutlak. Setiap orang yang ada di dalamnya memiliki perbedaan latar...

Software Developer Indonesia, Ini Cara Pakai Open XML di .NET Core

Bagi software developer Indonesia, saat ini, banyak aplikasi yang menerapkan office tools untuk membantu pengerjaan dokumen, presentasi, maupun spreadsheet. Office tools ini...