dart control flow | java php laravel linux mysql sql bootstrap html css query java php laravel linux mysql sql bootstrap html css query: dart control flow

Sunday, May 3, 2026

dart control flow

🚀 Seri Belajar Dart · Artikel 3 dari 16

Percabangan & Perulangan —
Bikin Program yang Bisa Berpikir

Dari if-else sampai for loop — inilah fondasi logika yang membuat program kamu hidup dan bisa mengambil keputusan.

#ControlFlow #Dart #Pemula #BelajarDart
⏱ 10
Menit Baca
🎯 Dasar
Level
📅 2026
Tahun
📝 ~1800
Kata

Pernah mikir, gimana caranya mesin ATM tahu PIN kamu salah lalu memblokir kartu setelah tiga kali percobaan? Atau bagaimana aplikasi ojek online memilih driver terdekat dari puluhan driver yang online? Jawabannya ada di dua konsep paling fundamental dalam programming: percabangan dan perulangan Dart — dua senjata yang bikin program kamu bisa berpikir dan berulang tanpa harus kamu tulis satu-satu. Di artikel ke-3 seri Dart From Zero to Zorro ini, kita akan kupas tuntas control flow dari nol sampai kamu bisa langsung praktik.

🧠 Apa Itu Control Flow — Otak di Balik Program Kamu

Bayangkan kamu sedang masak mie instan (siapa yang nggak pernah 😄). Prosesnya punya cabang: kalau airnya sudah mendidih, masukin mie — kalau belum, tunggu dulu. Dan ada pengulangan: aduk terus sampai matang. Nah, inilah analogi paling sederhana untuk control flow di pemrograman.

Tanpa control flow, program hanya bisa jalan lurus dari atas ke bawah — monoton dan tidak bisa merespons kondisi apapun. Dengan percabangan dan perulangan Dart, program kamu bisa mengambil keputusan dan menjalankan tugas berulang secara efisien.

📌 KONSEP UTAMA
Control Flow = Percabangan + Perulangan
Percabangan → Program memilih jalur eksekusi berdasarkan kondisi tertentu.
Perulangan → Program mengulang blok kode selama kondisi terpenuhi.

🔀 Percabangan di Dart — if, else if, switch

Percabangan adalah mekanisme dimana program memilih apa yang harus dilakukan berdasarkan sebuah kondisi. Di Dart, ada tiga cara utama untuk menulis percabangan:

1
Pernyataan if — Kondisi Tunggal

Digunakan saat kamu hanya butuh memeriksa satu kondisi. Jika kondisinya benar (true), blok kode di dalamnya dijalankan.

dart
int nilai = 85; if (nilai >= 75) { print('Selamat! Kamu lulus 🎉'); }
2
Pernyataan if-else — Dua Jalur

Saat kondisi tidak terpenuhi, blok else yang dijalankan. Seperti rambu jalan: belok kiri atau belok kanan.

dart
int nilai = 60; if (nilai >= 75) { print('Lulus ✅'); } else { print('Belum lulus, coba lagi ya! 💪'); }
3
Pernyataan else if — Multi-Kondisi

Kalau ada lebih dari dua kemungkinan, gunakan else if untuk menambahkan kondisi bertingkat.

dart
int nilai = 72; if (nilai >= 90) { print('Grade A — Luar biasa! 🏆'); } else if (nilai >= 75) { print('Grade B — Bagus! 👍'); } else if (nilai >= 60) { print('Grade C — Cukup 😐'); } else { print('Grade D — Perlu banyak belajar lagi 📚'); }
4
Pernyataan switch-case — Menu Pilihan

switch cocok untuk kondisi dengan nilai yang sudah pasti (diskrit), seperti memilih menu atau hari dalam seminggu. Jauh lebih rapi dibanding deretan else if.

dart
String hari = 'Senin'; switch (hari) { case 'Senin': print('Semangat awal pekan! ☀️'); break; case 'Jumat': print('Hampir weekend nih! 🎉'); break; case 'Sabtu': case 'Minggu': print('Selamat istirahat! 😴'); break; default: print('Hari biasa, tetap produktif! 💻'); }
💡
Tips Pro
Gunakan if-else untuk kondisi dengan range nilai (seperti angka ≥ 75). Gunakan switch untuk kondisi dengan nilai pasti dan terbatas (seperti nama hari, kode menu, status pesanan). Kode kamu akan lebih mudah dibaca!

🔁 Perulangan di Dart — for, while, do-while

Bayangkan kamu disuruh nulis "Saya berjanji tidak mencontek" sebanyak 100 kali. Tanpa loop, kamu harus copy-paste 100 kali. Dengan perulangan, cukup tulis 3 baris kode. Itulah kekuatan loop — bagian kedua dari percabangan dan perulangan Dart yang wajib kamu kuasai.

🔥
Fakta Menarik
Aplikasi Instagram memuat feed kamu menggunakan loop — setiap post adalah satu iterasi yang dirender satu per satu. Tanpa loop, developer harus hardcode setiap postingan. Kebayang nggak repotnya? 😅
1
Loop for — Kalau Kamu Tahu Berapa Kali

Gunakan for saat kamu sudah tahu berapa kali perulangan harus berjalan. Tiga bagian: inisialisasi, kondisi, dan increment.

dart
// Cetak angka 1 sampai 5 for (int i = 1; i <= 5; i++) { print('Angka ke-$i'); } // Output: // Angka ke-1 // Angka ke-2 // Angka ke-3 // Angka ke-4 // Angka ke-5
2
Loop for-in — Iterasi List / Collection

Cara paling elegan untuk iterasi sebuah list. Tidak perlu repot dengan index manual.

dart
List<String> buah = ['Apel', 'Mangga', 'Durian']; for (String item in buah) { print('Buah: $item 🍎'); } // Output: // Buah: Apel 🍎 // Buah: Mangga 🍎 // Buah: Durian 🍎
3
Loop while — Selama Kondisi Benar

Gunakan while saat jumlah iterasi belum diketahui. Loop berjalan selama kondisi bernilai true.

dart
int stok = 5; while (stok > 0) { print('Stok tersisa: $stok'); stok--; } print('Stok habis! 📦'); // Output: // Stok tersisa: 5 ... 4 ... 3 ... 2 ... 1 // Stok habis! 📦
4
Loop do-while — Jalankan Dulu, Cek Belakangan

Mirip while, tapi kode di dalam blok selalu dijalankan minimal satu kali sebelum kondisi diperiksa. Cocok untuk menu interaktif.

dart
int percobaan = 0; do { percobaan++; print('Percobaan ke-$percobaan'); } while (percobaan < 3); // Output: // Percobaan ke-1 // Percobaan ke-2 // Percobaan ke-3
⚠️
Perhatian — Infinite Loop!
Hati-hati dengan loop yang kondisinya tidak pernah jadi false — ini disebut infinite loop dan akan membuat program kamu hang selamanya! Pastikan selalu ada kondisi yang memungkinkan loop berhenti. Contoh: lupa menulis i++ di dalam while loop.

📊 Tabel Perbandingan — Kapan Pakai Yang Mana?

Jenis Kapan Digunakan Kelebihan Tingkat Kesulitan
if-else Kondisi range / boolean Fleksibel, bisa kombinasi
switch-case Nilai diskrit yang pasti Lebih bersih & terstruktur ⭐⭐
for Jumlah iterasi sudah tahu Kontrol penuh atas counter
for-in Iterasi list/collection Singkat dan elegan
while Iterasi tidak tahu kapan stop Kondisional penuh ⭐⭐
do-while Harus jalan minimal 1x Cocok untuk menu input ⭐⭐

🎯 Menggabungkan Percabangan dan Perulangan Dart

Kekuatan sesungguhnya muncul saat kamu menggabungkan percabangan dan perulangan. Contoh nyata: program kasir yang memeriksa harga setiap item dalam keranjang belanja.

🔬 ANALISIS KODE — Studi Kasus Program Nilai Siswa
dart
List<Map<String, dynamic>> siswa = [ {'nama': 'Andi', 'nilai': 88}, {'nama': 'Budi', 'nilai': 55}, {'nama': 'Cika', 'nilai': 72}, ]; for (var s in siswa) { String status; if (s['nilai'] >= 75) { status = 'LULUS ✅'; } else { status = 'REMEDIAL ❌'; } print('${s['nama']}: ${s['nilai']} → $status'); } // Output: // Andi: 88 → LULUS ✅ // Budi: 55 → REMEDIAL ❌ // Cika: 72 → REMEDIAL ❌
💡 Analisis: Loop for-in iterasi setiap siswa → if-else menentukan status → hasil ditampilkan. Inilah kombo paling sering kamu temui di dunia nyata!
Insight Penting
Artikel ini adalah bagian ke-3 dari seri 16 Artikel Belajar Dart: Dart From Zero to Zorro. Setiap konsep dibangun di atas konsep sebelumnya — pastikan kamu sudah paham variabel dan tipe data dari Artikel 2 sebelum lanjut ke fungsi di Artikel 4!
📝 KESIMPULAN

Kamu Sekarang Punya Logika! 🧠

Di artikel ini, kita sudah menjelajahi dunia percabangan dan perulangan Dart dari nol. Ini rangkuman yang harus kamu ingat:

  • if / else if / else — untuk memilih jalur eksekusi berdasarkan kondisi
  • switch-case — untuk kondisi dengan nilai pasti dan terbatas
  • for loop — iterasi dengan jumlah yang sudah diketahui
  • for-in — iterasi elegan untuk list dan collection
  • while & do-while — iterasi kondisional yang fleksibel
  • Kombinasi keduanya — kunci membangun logika program yang kompleks dan realistis

Selanjutnya di Artikel 4, kita akan belajar tentang Fungsi di Dart — cara membungkus kode agar rapi dan bisa dipakai ulang. Stay tuned!

💬 Punya pertanyaan atau stuck di bagian mana?
Tulis di kolom komentar di bawah — kita diskusi bareng! Dan kalau artikel ini membantu, share ke teman yang juga lagi belajar Dart. 🚀
💬 Tulis Komentar 📤 Share Artikel
📚
BAGIAN DARI SERI
Dart From Zero to Zorro
16 Artikel lengkap dari nol sampai mahir — panduan belajar Dart paling terstruktur untuk pemula.
🗺️ Lihat Daftar Isi Lengkap →

No comments:

Post a Comment

saifiahmada.com adalah blog belajar programming Indonesia, membahas lengkap materi bahasa pemrograman: code HTML, CSS, Bootstrap, Desain, PHP, MySQL, coding Java, Query, SQL, dan dunia linux