Tugas 10 Unscramble Word
Aplikasi Unscramble Word
Vito Febrian Ananta
5025211224
Pemrograman Perangkat Bergerak (D)
Pemrograman Perangkat Bergerak (D)
Kode: (Github Repository)
Pada tugas ke-10 ini, telah dibuat aplikasi/game Unscramble Word. Untuk mengembangkan kemampuan secara teknis dan kreatifitas, saya memutuskan untuk mendalami aplikasi ini dengan beberapa poin berikut:
1. Implementasi StateFlow untuk Mengelola UI State
1. Implementasi StateFlow untuk Mengelola UI State
2. Pemisahan State Lokal dan Global dengan mutableStateOf
3. Observasi State dalam Composable dengan collectAsState
Berikut adalah penjelasan detail dari kodenya:
1. Implementasi StateFlow untuk Mengelola UI State
StateFlow adalah cara modern untuk mengelola state dalam ViewModel yang bersifat reactive. Dengan menggunakan MutableStateFlow sebagai private property dan StateFlow sebagai public property, kita memastikan bahwa hanya ViewModel yang dapat mengubah state, sementara UI hanya dapat mengobservasi perubahan state. Penggunaan _uiState.update() memungkinkan kita melakukan perubahan state secara immutable dan thread-safe, yang sangat penting untuk menjaga konsistensi data dalam aplikasi.
2. Pemisahan State Lokal dan Global dengan mutableStateOf
Dalam aplikasi ini, terdapat pemisahan yang jelas antara state global (seperti skor, kata yang diacak, status game) yang disimpan dalam StateFlow, dan state lokal (seperti input tebakan user) yang menggunakan mutableStateOf . State lokal seperti userGuess cocok menggunakan mutableStateOf karena sifatnya yang sementara dan tidak perlu disimpan dalam state global. Pemisahan ini membuat kode lebih terorganisir dan performa aplikasi lebih optimal karena tidak semua perubahan input memicu rekomposisi seluruh UI.
3. Observasi State dalam Composable dengan collectAsState





Comments
Post a Comment