Template MVVM Activity Untuk Android Studio
Cara mudah membuat MVVM Activity
Tl;dr
Berawal dari salah satu template buatan senior saya di sini. Template ini memudahkan pembuatan activity dengan arsitektur MVP. Dengan menggunakan template ini, pengembang tidak perlu membuat satu persatu class yang dibutuhkan seperti Presenter, Contract dll.
Lalu saya berpikir, kenapa saya tidak membuat hal yang sama untuk arsitektur MVVM? Belakangan MVVM menjadi perbincangan yang menarik di antara para pengembang aplikasi Android. Google pun sudah merekomendasikan penggunaan MVVM sebagai arsitektur pengembangan aplikasi Android.
Pengembangan aplikasi android di divisi CodeLabs-pun sudah mulai merambat menggunakan MVVM ini. Dengan membangun template yang dapat memudahkan pembuatan Activity MVVM ini akan meningkatkan produktivitas tim juga.
Dengan bermodalkan template yang sudah dibuat oleh senior saya dan beberapa pengetahuan dari banyak sumber di medium terutama di sini saya mencoba membangun template saya sendiri dan Ta-Da ~. Inilah hasilnya.
Instalasi
Proses instalasi template ini tidak berbeda dengan proses instalasi template MVP sebelumnya.
- Download atau clone source code berikut https://github.com/GoLok56/android-mvvm-template
- Copy folder MVVM Android ke dalam folder {Folder Android Studio}/plugins/android/lib/templates/activities
- Restart Android Studio jika Android Studio sedang terbuka
Penggunaan
Untuk penggunaannya pun tidak jauh berbeda dengan membuat template Activity yang biasa kita buat.
- Klik kanan pada package yang diinginkan -> New -> Activity -> MVVM Activity
- Lalu isikan form yang disediakan
3. Klik Finish. Setelah itu, kita bisa melihat sudah ada beberapa file baru
CATATAN
Agar template ini dapat digunakan dengan baik, ada beberapa hal yang harus diperhatikan, di antaranya:
- Pastikan menggunakan artifact AndroidX
- Sudah menambahkan dependency lifecycle extension pada build.gradle
implementation "androidx.lifecycle:lifecycle-extensions:2.0.0"
Tentu saja masih banyak sekali kekurangan pada template ini, kritik dan saran diterima dengan senang hati :D