ViewModel and State in Compose
Apa itu ViewModel?
ViewModel adalah sebuah kelas yang dirancang untuk menyimpan dan mengelola data yang biasanya berhubungan dengan UI. Sehingga data tersebut dapat digunakan kembali saat terjadi perubahan konfigurasi.
Apa fungsi dari ViewModel?
Terkadang, terjadi beberapa perubahan konfigurasi pada device yang kita gunakan, entah itu saat rotasi layar, munculnya virtual keyboard, dan lain-lain. Saat perubahan itu terjadi, android akan melakukan restart terhadap activity yang sedang berjalan.
Contoh sederhananya, saat aplikasi kita sedang melakukan request data ke server ketika activity diakses, ketika data sudah ditampilkan, tiba-tiba user melakukan rotasi layar, maka activity akan melakukan restart dan melakukan request data dari awal, yang seharusnya tidak perlu dilakukan lagi.
Untuk itulah ViewModel dibuat, ViewModel dapat menyimpan dan mengembalikan data yang terikat dengan suatu activity maupun fragment sehingga aplikasi kita dapat menggunakan data yang sebelumnya sudah dimiliki.
Referensi
- https://developer.android.com/codelabs/basic-android-kotlin-compose-viewmodel-and-state#0
- https://github.com/google-developer-training/basic-android-kotlin-compose-training-unscramble/tree/starter
- https://waresix.engineering/mengenal-dan-mencoba-jetpack-compose-145e32ee7604
- https://www.slideshare.net/GDSCVJTI/jetpack-composepptx-255914587
- https://developer.android.com/compose-camp?hl=id
- https://developer.android.com/courses/kotlin-android-fundamentals/overview?hl=id
- https://www.youtube.com/watch?v=2pxRpShpA_E&list=PLD1lNdi1NpDpl6222zhJ4s7MxX8aUxO_U&index=1
- https://github.com/android/architecture-components-samples
Nama: Naufal Ariq Putra Yosyam
ReplyDeleteNRP: 5025201112
Kelas: PBB - F
Link: Tugas 7
Nama : Muhammad Ismail
ReplyDeleteNRP : 5025201223
Kelas : PPB - F
Link : Link
Nama : Arya Widia Putra
ReplyDeleteNRP : 5025201016
Kelas : PPB - F
Link : Tugas 7
Nama : Rahmat Faris Akbar
ReplyDeleteNRP : 5025201003
Kelas : PPB F
Tahun : 2024
Link : Tugas 7 PPB F
Nama : Daniel Hermawan
ReplyDeleteNRP : 5025201087
Kelas : PPB F
Tahun : 2024
Link : Tugas 7
Nama : Julio Geraldi Soeiono
ReplyDeleteNRP : 5025201079
Kelas : PPB F
Tahun : 2024
Link : Tugas 7
Nama : Samuel Berkat Hulu
ReplyDeleteNRP : 5025201055
Kelas : PPB - F
Tahun : 2024
Link : Tugas 7 PPB - F
Nama : Syaiful Bahri Dirgantara
ReplyDeleteNRP : 5025201203
Kelas : PPB - F
Tahun : 2024
Link : Tugas 7
Nama : Ahmad Ibnu Malik Rahman
ReplyDeleteNRP : 5025201232
Kelas : PPB F
Tahun : 2024
Link : Tugas 7
This comment has been removed by the author.
ReplyDeleteNama : Ezekiel Mashal Wicaksono
ReplyDeleteNRP : 5025201140
Kelas : PPB F
Link : Tugas 7
Nama : Zunia Aswaroh
ReplyDeleteNRP : 5025201058
Kelas : PPB F
Tahun : 2024
Link : Tugas 7
Nama : Ravin Pradhitya
ReplyDeleteNRP : 5025201068
Kelas: PPB F
Link Blog : Blog
Nama : Marsyavero Charisyah Putra
ReplyDeleteNRP : 5025201122
Kelas : PPB F
Link : Tugas 7
Nama : Pierra Muhammad Shobr
ReplyDeleteNRP : 5025201062
Kelas : PPB F
Link : Tugas 7
Nama : Dawamul Fikri Aqil
ReplyDeleteNRP : 5025201025
Kelas : PPB F
Tahun : 2024
Link : Tugas 7
Nama: Elthan Ramanda Berlindo
ReplyDeleteNRP: 5025201092
Kelas: PPB F
Tahun: 2024
Link : Blog
Nama: James Silaban
ReplyDeleteNRP: 5025201169
Kelas: PPB F
Tahun: 2024
Link : Blog
Nama: Antonio Taifan Montana
ReplyDeleteNRP: 5025201219
Kelas: PBB - F
Link: Tugas 7
Nama : Wahyu Tri Saputro
ReplyDeleteNRP : 5025201217
Kelas : PPB - B
Tahun : 2024
Blog : Tugas 8
This comment has been removed by the author.
ReplyDeleteNama : Hesekiel Nainggolan
ReplyDeleteNRP : 5025201054
Kelas : PPB - I
Tahun : 2024
Link : Unscramble Words
Nama: Julio Geraldi Soeiono
ReplyDeleteNRP: 5025201079
Kelas: PBB - F
Tahun: 2024
Link: Tugas 7
Nama: Nabila Zakiyah Khansa Machrus
ReplyDeleteNRP: 5025201139
Kelas: PPB - F
Link: Tugas 7
Nama: Sastiara Maulikh
ReplyDeleteNRP: 5025201257
Kelas: PPB - F
Link: Tugas 7
Nama : Rachman Ridwan
ReplyDeleteNRP : 5025201061
Kelas : PPB - F
Link : Tugas 7
Nama : Muhammad Naufal Fawwaz Ramadhan
ReplyDeleteNRP : 5025211223
Kelas : PPB - F
Link : Tugas 7