0Pricing
Android Academy · Pelajaran

Penjelasan Rekomposisi

Pelajari cara Compose memperbarui UI.

Penjelasan Rekomposisi adalah pelajaran Android Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Android Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Android Academy mencakup 4 pelajaran total.

Apa Itu Rekomposisi?

Rekomposisi adalah saat Compose menjalankan kembali fungsi komposabel Anda untuk memperbarui UI ketika status yang dibacanya berubah. Inilah cara layar tetap selaras dengan data Anda.

Dipicu oleh Pembacaan Status

Compose melacak komposabel mana yang membaca status tertentu. Saat nilai status berubah, hanya komposabel yang membacanya yang dijadwalkan untuk direkomposisi.

Cerdas dan Selektif

Rekomposisi bersifat selektif: Compose berusaha menjalankan ulang sesedikit mungkin. Perubahan pada satu bagian status tidak akan menggambar ulang seluruh layar — hanya bagian yang bergantung padanya.

Melewati Eksekusi

Jika input komposabel tidak berubah, Compose dapat melewati proses menjalankannya kembali sepenuhnya. Dengan begitu, rekomposisi tetap ringan bahkan pada layar yang kompleks.

Komposabel Sering Dijalankan

Karena rekomposisi dapat terjadi sering dan dalam urutan apa pun, komposabel Anda harus aman untuk dijalankan kembali. Memanggilnya berkali-kali harus menghasilkan UI yang sama untuk status yang sama.

Hindari Efek Samping

Jangan melakukan efek samping (panggilan jaringan, menulis file, mengubah variabel bersama) langsung di dalam isi komposabel. Efek tersebut mungkin dijalankan pada setiap rekomposisi. Gunakan status dan API efek sebagai gantinya.

// BAD: runs on every recomposition
@Composable
fun Bad() {
    saveToDatabase()
    Text("Hi")
}

Kemandirian Urutan

Anda tidak boleh mengandalkan komposabel untuk dijalankan dalam urutan atau thread tertentu. Perlakukan setiap pemanggilan sebagai sesuatu yang independen. Kebebasan inilah yang memungkinkan Compose melakukan pengoptimalan secara agresif.

Membaca vs Tidak Membaca

Hanya komposabel yang membaca suatu status yang direkomposisi ketika status itu berubah. Jika Text tidak pernah membaca count, perubahan pada count tidak akan memengaruhinya.

@Composable
fun Demo() {
    var count by remember { mutableStateOf(0) }
    Text("Static")          // never recomposes from count
    Text("Count: $count")    // recomposes when count changes
    Button(onClick = { count++ }) { Text("+") }
}

Hindari Loop Rekomposisi

Menulis ke status selama komposisi (bukan di dalam suatu peristiwa) dapat menyebabkan loop rekomposisi tanpa akhir. Perbarui status hanya dari panggilan balik seperti onClick, jangan langsung di dalam isi komposabel.

Terasa Otomatis

Dari sudut pandang Anda, rekomposisi terasa otomatis. Anda mendeklarasikan UI sebagai fungsi dari status, mengubah status dalam panggilan balik, dan Compose menangani proses menjalankan kembali komposabel yang tepat.

Menggabungkan Semuanya

Penghitung ini mendemonstrasikan rekomposisi: mengetuk tombol mengubah count, Compose menjalankan kembali Text yang membacanya, dan angka baru muncul.

@Composable
fun Counter() {
    var count by remember { mutableStateOf(0) }
    Button(onClick = { count++ }) {
        Text(text = "Count: $count")
    }
}

Pemeriksaan Cepat

Kapan Compose merekomposisi suatu komposabel?

Rangkuman

Hal penting tentang rekomposisi:

  • Perubahan status memicu komposabel yang membaca status tersebut untuk dijalankan kembali.
  • Proses ini selektif dan dapat melewati komposabel yang tidak berubah.
  • Komposabel harus bebas dari efek samping dan aman dijalankan kembali dalam urutan apa pun.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Penjelasan Rekomposisi” gratis?

Ya — teks lengkap “Penjelasan Rekomposisi” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Android Academy, upgrade ke CoddyKit PRO. Kursus Android Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Penjelasan Rekomposisi”?

Pelajari cara Compose memperbarui UI. Kamu berlatih Android Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Android Academy?

Tidak diperlukan pengalaman sebelumnya. Android Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Penjelasan Rekomposisi” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Android Academy ini?

Ya. Setiap pelajaran Android Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. State dengan remember dan mutableStateOf
  2. Penjelasan Rekomposisi
  3. Mengangkat State
  4. rememberSaveable
← Kembali ke Android Academy