Android Academy · Pelajaran

Apakah Jetpack Compose?

Fahami UI deklaratif dalam Android.

Pelajaran 1 daripada 413 langkah

Apakah Jetpack Compose? ialah pelajaran Android Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Android Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Android Academy merangkumi sejumlah 4 pelajaran.

Apakah Jetpack Compose?

Jetpack Compose ialah kit alat moden Android untuk membina UI natif. Daripada menulis fail reka letak XML, anda menerangkan UI secara terus dalam kod Kotlin.

Compose bersifat deklaratif: anda memberitahunya rupa skrin yang sepatutnya bagi keadaan tertentu, kemudian Compose menentukan cara melukis dan mengemas kininya.

Cara Lama: Paparan XML

Dahulu, skrin Android memerlukan dua bahagian:

  • Fail reka letak XML yang menerangkan widget.
  • Kod Kotlin/Java yang mencari paparan tersebut dengan findViewById dan mengubahnya.

Memastikan XML dan kod sentiasa selaras adalah membosankan dan mudah menyebabkan ralat.

<!-- res/layout/activity_main.xml -->
<TextView
    android:id="@+id/greeting"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

Imperatif berbanding Deklaratif

Dengan paparan XML, anda menulis kod imperatif: dapatkan paparan, kemudian ubahnya langkah demi langkah.

Dengan Compose, anda menulis kod deklaratif: terangkan hasil akhir sebagai fungsi data anda. Apabila data berubah, Compose melukis semula perkara yang diperlukan secara automatik.

// Imperative (old views)
val tv = findViewById<TextView>(R.id.greeting)
tv.text = "Hello"
tv.visibility = View.VISIBLE

Fungsi Composable

Blok binaan Compose ialah fungsi composable: fungsi Kotlin biasa yang dianotasi dengan @Composable dan menghasilkan UI.

Composable boleh memanggil composable lain, membolehkan anda membina skrin daripada bahagian kecil yang boleh digunakan semula.

@Composable
fun Greeting(name: String) {
    Text(text = "Hello, $name!")
}

Tiada findViewById

Dalam Compose, tiada findViewById dan tiada ID paparan. UI ialah panggilan fungsi. Untuk menunjukkan teks yang berbeza, anda hanya perlu menghantar argumen yang berbeza dan membenarkan Compose melakukan gubahan semula.

@Composable
fun Screen() {
    Greeting(name = "Ada")
    Greeting(name = "Linus")
}

UI sebagai Fungsi Keadaan

Idea utama: UI = f(state). Skrin ialah output composable anda berdasarkan keadaan semasa. Ubah keadaan, dan fungsi yang sama menghasilkan UI baharu.

Ini menjadikan UI lebih mudah dijangka dan difahami.

Semuanya Kotlin

Oleh sebab composable ialah fungsi Kotlin, anda boleh menggunakan gelung, syarat dan pemboleh ubah untuk membina UI. Tiada bahasa templat khas diperlukan.

@Composable
fun Items(names: List<String>) {
    for (n in names) {
        Text(text = n)
    }
}

Kurang Kod Lebihan

Compose menghapuskan sejumlah besar kod penghubung. Tiada pengembangan XML, tiada penyesuai untuk senarai mudah dan tiada penyambungan manual antara reka letak dengan logik.

Hasilnya: lebih sedikit fail dan lebih sedikit pepijat.

Boleh Beroperasi dengan Paparan

Anda tidak perlu menulis semula seluruh aplikasi. Compose boleh beroperasi bersama sistem View lama. Anda boleh membenamkan Compose dalam skrin XML sedia ada, atau membenamkan View dalam Compose.

Ini membolehkan pasukan berpindah secara beransur-ansur.

Perkara yang Diperlukan

Untuk menggunakan Compose, anda memerlukan:

  • Android Studio yang terkini.
  • Kebergantungan Compose dalam fail Gradle anda.
  • Activity yang memanggil setContent { } untuk menempatkan composable.

Skrin Kecil

Berikut ialah skrin Compose minimum yang lengkap. setContent ialah jambatan daripada Activity Android ke dunia Compose.

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            Greeting(name = "World")
        }
    }
}

Semakan Pantas

Apakah huraian terbaik untuk Jetpack Compose?

Imbas Kembali

Anda telah mempelajari bahawa Jetpack Compose ialah kit alat UI deklaratif yang mengutamakan Kotlin. Idea utama:

  • UI dibina daripada fungsi @Composable.
  • Tiada XML dan tiada findViewById.
  • UI = f(state) — ubah keadaan, Compose melukis semula.
Percuma untuk bermula

Pelajari Kotlin dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
36
Pelajaran
152

Soalan Lazim

Adakah pelajaran “Apakah Jetpack Compose?” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Android Academy, termasuk “Apakah Jetpack Compose?”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Android Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Apakah Jetpack Compose?”?

Fahami UI deklaratif dalam Android. Anda berlatih Android Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Android Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Android Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.

Berapa lamakah pelajaran “Apakah Jetpack Compose?” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Android Academy ini?

Ya. Setiap pelajaran Android Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. Apakah Jetpack Compose?
  2. Composable Pertama Anda
  3. Teks, Imej dan Butang
  4. Pratonton dan Muat Semula Pantas
← Kembali ke Android Academy