Never Nested: Tips Menghindari Nested Code
Clean CodeBest PracticesCoding Tips
Nested code adalah kondisi/loop yang bertumpuk terlalu dalam (if di dalam if, for di dalam for, dst).
Semakin dalam nesting, semakin sulit dibaca, dipahami, dan dirawat.
❌ Masalah Nested Code
- Sulit dibaca (mental stack tinggi)
- Sulit debugging
- Rentan bug saat refactor
- Melanggar prinsip clean code
✅ Solusi: Kurangi Nesting
1. Gunakan Early Return
Keluar lebih awal jika kondisi tidak valid.
function process(user) { if (!user) return; if (!user.isActive) return; doSomething(); }
Lebih baik daripada:
if (user) { if (user.isActive) { doSomething(); } }
2. Gunakan Guard Clause
Validasi di awal fungsi.
if (!isAuthorized) throw new Error("Unauthorized");
3. Extract ke Function
Jika logic mulai bercabang, pisahkan.
if (isValidOrder(order)) { processOrder(order); }
4. Hindari else yang Tidak Perlu
Jika sudah return, else sering kali tidak dibutuhkan.
🎯 Rule of Thumb
- Maksimal 2–3 level nesting
- Jika mulai geser ke kanan → refactor
- Kode yang baik dibaca dari atas ke bawah tanpa mikir keras