Sekarang Android sudah resmi mempunyai Design Programming Pattern yaitu MVVM (Model View ViewModel) dan sudah menjadi bagian dari Android Architecture Component.

Untuk tutorial kali ini yaitu menerapkan MVVM pada project android. biar mudah ini dimulai dari awal. pertama buat project android baru. jangan lupa centang Include Kotlin Support (belajar Kotlin dulu disini).


lanjut pilih target SDK. minimal support API 16 Android 4.1


pilih default layout Empty Activity.


lanjut ke pembuatan default layout dan penamaan, biarkan default saja.


ketika project android sukses dibuat. aktifkan dulu mode data bindingnya. buka file app/build.gradle. di dalam android{ } tambahkan dataBinding. lihat gambar dibawah ini.


lanjut menambah library untuk ViewModel. karena biasanya project android juga menggunakan live data maka library yang dipakai komplit viewmodel dan live data. tambahkan library android arch lifecycle seperti dibawah ini (sampai post ini dibuat versinya 1.1.1). untuk versi lengkapnya bisa dilihat disini.


sekarang library siap digunakan. buat class untuk viewmodelnya. buat class nya extends AndroidViewModel. lihat gambar berikut


sekarang tempatkan class view model pada layout xml. dalam hal ini nama layoutnya activity_main.xml dan rubah parent/top level xml dengan tag layout untuk class viewmodelnya ditambahkan pada tag data didalam variable. lihat gambar dibawah ini.


untuk menampilkannya sekarang buka class untuk view. dalam hal ini class MainActivity. lihat gambar dibawah ini. buat variabel binding dan viewmodel. keterangan ActivityMainBinding disini didapat otomatis dari generate layout activity_main.xml (data binding). jika tidak muncul coba di clean - re-build project.


mantab, sekarang viewmodel sudah tersambung ke view, lanjut buat class untuk model. buat class Mahasiswa


lanjut ke class ViewModelnya buat variabel ObservableField untuk ditampilkan ke view xml. sekaligus buat function untuk set data. untuk lebih jelasnya lihat gambar berikut.


sekarang menampilkan variabel nim. nama dan jurusan pada view xml. caranya seperti berikut ini. update dulu layout xmlnya, panggil nama data variable di ikuti nama variabel pada class ViewModel. lihat gambar berikut ini.


langkah terakhir isikan data lewat view dalam hal ini MainActivity.


tinggal jalankan dan selamat sudah membuat project android dengan MVVM.
selamat mencoba.

lihat source code nya disini.