Menyusun Pipeline Fungsi Murni
Merangkai transformasi secara terprediksi
Menyusun Pipeline Fungsi Murni adalah pelajaran Dart Academy gratis di CoddyKit. Ini adalah pelajaran 4 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 Dart Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Dart Academy mencakup 4 pelajaran total.
Apa Itu Fungsi Murni
Fungsi murni mengembalikan keluaran yang sama untuk masukan yang sama dan tidak mengubah apa pun di luar dirinya. Fungsi ini mudah diprediksi dan diuji. ✨
int double(int x) => x * 2; // pureMengenali Efek Samping
Fungsi dengan efek samping berinteraksi dengan dunia luar, misalnya mencetak sesuatu atau mengubah nilai global. Fungsi seperti ini lebih sulit dipahami.
var log = [];
void impure(int x) => log.add(x); // side effectMengapa Kemurnian Membantu Alur
Fungsi murni dapat dirangkai dengan aman karena setiap langkah hanya bergantung pada masukannya. Anda dapat menggabungkannya tanpa kejutan.
Merangkai map dan where
Alur hanyalah rangkaian transformasi. Saring dengan where, lalu ubah bentuknya dengan map, dengan membaca dari atas ke bawah.
var r = [1, 2, 3, 4]
.where((n) => n.isEven)
.map((n) => n * 10);Setiap Langkah Bersifat Malas
where dan map mengembalikan iterabel malas, jadi seluruh rangkaian hanya berjalan saat digunakan. Tambahkan toList untuk mewujudkan hasilnya.
print(r.toList()); // [20, 40]Mengakhiri dengan fold
Akhiri alur dengan penggabungan. Di sini, fold menjumlahkan nilai yang telah disaring dan diubah menjadi satu angka.
var sum = [1, 2, 3, 4]
.where((n) => n.isEven)
.fold(0, (a, b) => a + b);Menggabungkan Dua Fungsi
Anda dapat membuat fungsi baru dengan memasukkan satu hasil ke fungsi lainnya. Penggabungan ini berarti jalankan f, lalu g.
int Function(int) compose(
int Function(int) f, int Function(int) g) =>
(x) => g(f(x));Menggunakan Fungsi Gabungan
Gabungkan langkah-langkah kecil yang murni menjadi satu fungsi yang dapat digunakan kembali. Hasilnya bertindak seperti pengubah yang rapi dan memiliki satu tujuan.
var f = compose((x) => x + 1, (x) => x * 2);
print(f(3)); // 8Buat Langkah Tetap Kecil
Fungsi murni yang kecil dan diberi nama membuat alur dapat menjelaskan dirinya sendiri. Setiap langkah mengerjakan satu tugas, sehingga rangkaiannya terbaca seperti resep.
Hindari Mengubah Masukan
Kembalikan nilai baru, bukan mengubah argumen langsung. Menjaga masukan tetap tidak berubah membuat alur dapat dipercaya.
List<int> bump(List<int> xs) =>
xs.map((x) => x + 1).toList();Alur Lengkap
Menggabungkan semuanya: saring, ubah, lalu gabungkan. Satu alur yang mudah dibaca mengubah data mentah menjadi jawaban akhir.
var avgx10 = [2, 4, 6]
.map((n) => n * 10)
.reduce((a, b) => a + b);Cek Cepat
Identifikasi hal yang membuat suatu fungsi menjadi murni.
Ringkasan
Fungsi murni dapat digabungkan menjadi alur yang jelas dan malas: saring, map, lalu gabungkan. Langkah-langkah kecil menghasilkan keluaran besar secara dapat diprediksi. 🎯
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Menyusun Pipeline Fungsi Murni” gratis?
Ya — teks lengkap “Menyusun Pipeline Fungsi Murni” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Dart Academy, upgrade ke CoddyKit PRO. Kursus Dart Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Menyusun Pipeline Fungsi Murni”?
Merangkai transformasi secara terprediksi Kamu berlatih Dart 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 Dart Academy?
Tidak diperlukan pengalaman sebelumnya. Dart 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 4 dari 4.
Berapa lama pelajaran “Menyusun Pipeline Fungsi Murni” 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 Dart Academy ini?
Ya. Setiap pelajaran Dart 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
- Fungsi Orde Tinggi dan Currying
- fold, reduce, dan expand
- Iterable Malas dan Generator dengan sync*
- Menyusun Pipeline Fungsi Murni