- EN
- ID
16. Kualitas Kode dan Developer Tooling
Daftar Isi Utama
- Lihat indeks lengkap di [01. Pengenalan]
Panduan ini untuk siapa
- Pembelajar yang ingin kualitas kode lebih rapi tanpa harus diingatkan terus
- Developer solo maupun tim yang ingin kebiasaan kerja production-ready
- Siapa pun yang capek dengan problem “jalan di laptop saya, gagal di tempat lain”
Apa yang akan Anda pelajari
- Setup ESLint dan Prettier yang praktis dan bisa dipertahankan tim
- Kenapa TypeScript strict mode sangat membantu mencegah bug mahal
- Cara mengotomatiskan quality checks lewat scripts dan pre-commit hooks
Mengapa topik ini penting
Tooling yang benar mengubah kualitas kode dari “niat baik” menjadi sistem.
Daripada bergantung ke ingatan developer, automation akan menangkap masalah lebih awal. Hasilnya: review lebih lancar, merge lebih aman, dan bug yang bisa dicegah tidak lolos ke production.
Konsep inti
Linting
- Menangkap pola kode berisiko sejak awal
Linting menjaga standar kualitas kode secara konsisten di seluruh kontributor.
Formatting
- Menjaga gaya kode konsisten antar kontributor
Formatting menghapus debat style agar review fokus ke logic.
Type strictness
- Menemukan risiko null/undefined dan mismatch lebih cepat
Strict typing menangkap banyak bug “diam-diam” sebelum runtime.
Panduan langkah demi langkah
Langkah 1 — Konfigurasi lint dan format
Siapkan baseline ESLint + Prettier dan pastikan konfigurasinya tidak saling bentrok.
Langkah 2 — Aktifkan opsi strict TypeScript
Aktifkan opsi strict bertahap kalau perlu, tapi tetap punya target menuju strict penuh.
Langkah 3 — Otomatiskan checks
Buat satu perintah untuk menjalankan semua quality checks sebelum merge.
Targetnya: quality gate otomatis, bukan opsional.
Contoh praktis
Contoh 1 — Script quality
{
"scripts": {
"lint": "eslint .",
"format": "prettier --write .",
"typecheck": "tsc --noEmit",
"check": "npm run lint && npm run typecheck"
}
}
Tip:
- Jaga command
checktetap cepat supaya realistis dipakai tiap hari.
Contoh 2 — Konsep pre-commit
- Jalankan
lintdantypechecksebelum commit
Ini membantu menahan commit berkualitas rendah sebelum masuk branch bersama.
Kesalahan umum dan cara menghindarinya
- Menganggap lint warning tidak penting -> perbaiki atau dokumentasikan pengecualian dengan jelas
- Auto-format tanpa cek diff -> tetap review perubahan yang bermakna
- Strict mode ditunda terlalu lama -> mulai lebih awal saat codebase belum terlalu besar
- Tool terlalu banyak tanpa tujuan jelas -> pakai stack tooling yang minimal tapi efektif
Mini Project
- Tambahkan quality pipeline lengkap ke satu project berisi:
- ESLint,
- Prettier,
- TypeScript
typecheck, - pre-commit check.
Bonus:
- Tambahkan CI check agar pull request otomatis gagal kalau quality check gagal.
Latihan cepat
- Perbaiki satu lint issue dan satu type issue
- Tambahkan satu script
check - Jalankan checks sebelum setiap commit
- Tulis satu aturan tim singkat: “Kapan lint rule boleh di-disable?”
Ringkasan utama
- Tooling membuat kualitas jadi proses yang konsisten, bukan bergantung ingatan
- Strict typing membantu menangkap bug penting lebih cepat
- Quality gate otomatis mempercepat kolaborasi dan mengurangi friksi review
Langkah berikutnya
Lanjut ke [17. Dasar Backend dengan Node.js].
No Comments