Jetpack Compose
Pengenalan Jetpack Compose
Apa itu Jetpack Compose, cara instalasi lewat Android Studio, dan cara menjalankan aplikasi pertamamu.
Composable Function Dasar
Membuat fungsi UI lewat annotation @Composable, unit terkecil pembangun tampilan Compose.
Text & Modifier
Mengatur tampilan visual Composable lewat parameter Modifier, pola konfigurasi khas Compose.
Layout Dasar: Column, Row, Box
Menyusun Composable secara vertikal, horizontal, atau bertumpuk.
State: remember & mutableStateOf
Menyimpan dan memicu update tampilan lewat state Compose.
Event Handling: onClick
Menangani interaksi pengguna lewat parameter onClick pada Button dan Composable interaktif lainnya.
Conditional Rendering: if & when
Menampilkan Composable secara kondisional lewat if/else dan when Kotlin biasa.
LazyColumn: Menampilkan Daftar Data
Menampilkan koleksi data sebagai daftar scrollable secara efisien lewat LazyColumn.
TextField & Forms
Menerima input teks lewat TextField, disinkronkan dengan state lewat pola value + onValueChange.
Composable dengan Parameter
Mengirim data ke Composable anak lewat parameter fungsi biasa, setara props di React.
State Hoisting
Memindahkan state ke Composable induk supaya bisa dipakai bersama, pola standar berbagi state di Compose.
Navigation Compose
Membuat aplikasi dengan banyak layar lewat library Navigation Compose.
Passing Data Antar Screen
Mengirim data lewat argumen route, dan menerimanya di Composable tujuan.
ViewModel & State Management
Menyimpan state yang bertahan lebih lama dari satu Composable lewat ViewModel, mengikuti Android Architecture Components.
Side Effects: LaunchedEffect
Menjalankan kode di luar alur composition murni, mis. fetch data sekali saat Composable pertama muncul.
Fetching Data dengan Retrofit
Mengambil data dari API lewat library Retrofit, dikombinasikan dengan ViewModel dan coroutine.
Theming: MaterialTheme
Mengatur tema visual aplikasi secara terpusat lewat MaterialTheme, termasuk dukungan dark mode.
Animasi Dasar: animateColorAsState
Animasi implisit paling sederhana di Compose — cukup ubah nilai target, Compose otomatis meng-animasikan transisinya.
Tugas Akhir
Latihan akhir menggabungkan state, LazyColumn, dan TextField dalam satu aplikasi Todo List.