Kotlin Multiplatform Academy · Pelajaran

Asas Flow dalam Kod Shared

Pancarkan aliran nilai daripada commonMain.

Pelajaran 1 daripada 413 langkah

Asas Flow dalam Kod Shared ialah pelajaran Kotlin Multiplatform Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kotlin Multiplatform Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kotlin Multiplatform Academy merangkumi sejumlah 4 pelajaran.

Aliran Nilai

Fungsi suspend mengembalikan satu nilai, kemudian selesai. Flow berbeza: ia memancarkan keseluruhan aliran nilai dari semasa ke semasa, satu demi satu. 🌊

Sejuk Secara Lalai

Flow bersifat sejuk: kod di dalamnya tidak melakukan apa-apa sehingga seseorang mula mengumpulkannya. Tanpa pengumpul, tiada kerja dilakukan, menjadikan kod dikongsi anda malas dan menjimatkan sumber.

Bina Satu dengan flow {}

Pembina flow ialah cara paling mudah untuk mencipta aliran. Di dalamnya, anda memanggil emit untuk menghantar setiap nilai kepada sesiapa yang sedang mendengar.

fun ticks(): Flow<Int> = flow {
    emit(1)
    emit(2)
    emit(3)
}

emit Menghantar Nilai

Setiap panggilan emit menyerahkan satu nilai kepada pengumpul sebelum bergerak ke nilai seterusnya. Aliran hanya selesai apabila blok pembina mengembalikan hasil.

Kumpul untuk Menerima

Untuk membaca Flow, anda collect aliran itu. Pengumpulan ialah panggilan suspend, jadi ia berada di dalam coroutine dan menjalankan blok anda untuk setiap nilai yang dipancarkan.

ticks().collect { value ->
    println(value)
}

Ia Berfungsi di Mana-mana

Flow disediakan dalam kotlinx-coroutines, yang menyokong pelbagai platform. Kod flow yang sama tepat dalam commonMain berjalan pada Android dan iOS tanpa sebarang perubahan. 🎉

flowOf untuk Nilai Tetap

Apabila anda sudah mengetahui nilainya, flowOf membungkus nilai tersebut menjadi Flow serta-merta. Inilah aliran paling cepat yang boleh anda cipta.

val names = flowOf("Ana", "Beto", "Cem")

Tukarkan List kepada Flow

Mana-mana Iterable boleh menjadi aliran dengan asFlow. Ini berguna apabila anda sudah mempunyai senarai dan mahu memprosesnya satu item pada satu masa.

val stream = listOf(10, 20, 30).asFlow()

Pancarkan Mengikut Masa

Oleh sebab pembina itu ialah blok suspend, anda boleh menggunakan delay antara pancaran. Ini memodelkan aliran sebenar seperti detik, bacaan penderia atau pengundian berkala.

flow {
    repeat(3) { i ->
        delay(1000)
        emit(i)
    }
}

Flow berbanding suspend

Gunakan fungsi suspend untuk satu hasil tak segerak, dan Flow apabila nilai terus tiba. Memilih yang betul memastikan API anda mencerminkan keperluan sebenar.

Mengapa Ia Sesuai untuk Kod Dikongsi

Flow membolehkan lapisan dikongsi anda menghantar data apabila data berubah, manakala setiap aplikasi hanya perlu mendengar. Logik perniagaan anda menggerakkan UI tanpa mengetahui platform yang digunakan.

Semakan Pantas

Mari pastikan asasnya difahami.

Imbas Kembali

Anda telah mengenali Flow: aliran sejuk yang dibina dengan flow dan dibaca dengan collect. Ia menyokong pelbagai platform, jadi aliran yang sama membekalkan data kepada Android dan iOS. 🌊

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
30
Pelajaran
120

Soalan Lazim

Adakah pelajaran “Asas Flow dalam Kod Shared” percuma?

Ya — teks penuh “Asas Flow dalam Kod Shared” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Kotlin Multiplatform Academy, tingkat taraf kepada CoddyKit PRO. Kursus Kotlin Multiplatform Academy merangkumi sejumlah 4 pelajaran.

Apakah yang akan saya pelajari dalam “Asas Flow dalam Kod Shared”?

Pancarkan aliran nilai daripada commonMain. Anda berlatih Kotlin Multiplatform 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 Kotlin Multiplatform Academy?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Kotlin Multiplatform 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 “Asas Flow dalam Kod Shared” 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 Kotlin Multiplatform Academy ini?

Ya. Setiap pelajaran Kotlin Multiplatform 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. Asas Flow dalam Kod Shared
  2. StateFlow untuk Keadaan UI Shared
  3. Operator: map, filter, combine
  4. Kumpulkan Flow pada Android dan iOS
← Kembali ke Kotlin Multiplatform Academy