Clean Code: Bagaimana Kita Mesti Melakukannya?

Programming Coding

Oleh: Wawan pada 2025-05-07 20:06:01 | Diperbarui: Wawan pada 2025-06-11 08:41:34

Bagikan: Facebook | Twitter | Whatsapp | Linkedin Kunjungan: 40


Clean Code: Bagaimana Kita Mesti Melakukannya?

Salah satu prinsip penting lainnya tentang prinsip fundamental coding adalah Clean Code, seperti yang sudah pernah saya singgung di tulisan saya sebelumnya. Definisi dari clean code mengacu kepada penulisan kode yang mudah dibaca, dipahami, serta dirawat. Penulis kode (coder) perlu menekankan kejelasan, kesederhanaan dan pengorganisasian sehingga memudahkan pengembang lain (bahkan penulis kode itu sendiri) untuk bekerja dengan kode tersebut di masa mendatang.

Clean Code oleh Robert Cecil Martin

Siapa "Paman Bob" ini? Beliau adalah seorang insinyur software, instruktur, dan penulis Amerika. Ia paling dikenal karena mempromosikan banyak prinsip desain software, salah satunya mengenai Clean Code. Berikut ini ringkasan dari tulisan Beliau.

Kapan sebuah Kode Dikatakan Bersih?

Kode dikatakan bersih jika dapat dipahami dengan mudah – oleh semua orang dalam tim. Kode yang bersih dapat dibaca dan disempurnakan oleh pengembang selain penulis aslinya. Dengan mudah dipahami, maka akan muncul keterbacaan, perubahan, perluasan, dan pemeliharaan.

Aturan umum

  1. Ikuti konvensi standar.
  2. Tetaplah sederhana, bodoh. Yang lebih sederhana selalu lebih baik. Kurangi kerumitan sebisa mungkin.
  3. Aturan pramuka. Tinggalkan tempat perkemahan lebih bersih daripada saat Anda datang.
  4. Selalu temukan akar permasalahannya. Selalu cari akar permasalahannya.

Aturan desain

  1. Simpan data yang dapat dikonfigurasi pada tingkat tinggi.
  2. Lebih suka polimorfisme daripada if/else atau switch/case.
  3. Kode multi-threading terpisah.
  4. Mencegah konfigurasi berlebihan.
  5. Gunakan injeksi ketergantungan.
  6. Ikuti Hukum Demeter. Suatu kelas seharusnya hanya mengetahui dependensi langsungnya.

Tips untuk dapat dipahami

  1. Konsistenlah. Jika Anda melakukan sesuatu dengan cara tertentu, lakukan semua hal serupa dengan cara yang sama.
  2. Gunakan variabel penjelas.
  3. Enkapsulasi kondisi batas. Kondisi batas sulit dilacak. Letakkan pemrosesan untuk kondisi tersebut di satu tempat.
  4. Lebih memilih objek nilai khusus daripada tipe primitif.
  5. Hindari ketergantungan logis. Jangan menulis metode yang berfungsi dengan benar bergantung pada sesuatu yang lain di kelas yang sama.
  6. Hindari kondisional negatif.

Aturan nama

  1. Pilih nama yang deskriptif dan tidak ambigu.
  2. Membuat perbedaan yang berarti.
  3. Gunakan nama yang dapat diucapkan.
  4. Gunakan nama yang dapat dicari.
  5. Ganti angka ajaib dengan konstanta bernama.
  6. Hindari penyandian. Jangan tambahkan awalan atau informasi jenis.

Fungsi aturan

  1. Kecil.
  2. Lakukan satu hal.
  3. Gunakan nama yang deskriptif.
  4. Lebih suka sedikit argumen.
  5. Tidak memiliki efek samping.
  6. Jangan gunakan argumen flag.
  7. Pisahkan metode menjadi beberapa metode independen yang dapat dipanggil dari klien tanpa flag.

Aturan komentar

  1. Selalu coba jelaskan diri Anda dalam kode.
  2. Jangan berlebihan.
  3. Jangan menambahkan gangguan yang kentara.
  4. Jangan gunakan komentar kurung kurawal tutup.
  5. Jangan mengomentari kode. Hapus saja.
  6. Gunakan sebagai penjelasan maksud.
  7. Gunakan sebagai klarifikasi kode.
  8. Gunakan sebagai peringatan akan konsekuensinya.

Struktur kode sumber

  1. Pisahkan konsep secara vertikal.
  2. Kode terkait harus muncul secara vertikal padat.
  3. Mendeklarasikan variabel yang dekat dengan penggunaannya.
  4. Fungsi dependen harus ditutup.
  5. Fungsi serupa seharusnya dekat.
  6. Tempatkan fungsi dalam arah ke bawah.
  7. Jaga agar kalimat tetap pendek.
  8. Jangan gunakan perataan horizontal.
  9. Gunakan spasi untuk mengaitkan hal-hal yang berhubungan dan memisahkan hal-hal yang hubungannya lemah.
  10. Jangan merusak lekukan.

Objek dan struktur data

  1. Sembunyikan struktur internal.
  2. Lebih suka struktur data.
  3. Hindari struktur hibrida (setengah objek dan setengah data).
  4. Harusnya kecil.
  5. Lakukan satu hal.
  6. Jumlah variabel instan kecil.
  7. Kelas dasar seharusnya tidak mengetahui apa pun tentang turunannya.
  8. Lebih baik memiliki banyak fungsi daripada memasukkan beberapa kode ke dalam suatu fungsi untuk memilih suatu perilaku.
  9. Lebih suka metode non-statis daripada metode statis.

Tes

  1. Satu pernyataan per pengujian.
  2. Dapat dibaca. Cepat.
  3. Mandiri.
  4. Dapat diulang.

Bau kode

  1. Kekakuan (Frigiditas). Perangkat lunak sulit diubah. Perubahan kecil menyebabkan serangkaian perubahan berikutnya.
  2. Kerapuhan (Fragilitas). Perangkat lunak rusak di banyak tempat karena satu perubahan.
  3. Imobilitas. Anda tidak dapat menggunakan kembali bagian kode dalam proyek lain karena melibatkan risiko dan upaya yang tinggi.
  4. Kompleksitas yang Tidak Perlu.
  5. Pengulangan yang Tidak Perlu.
  6. Opacity. Kodenya sulit dipahami.



Tinggalkan Komentar:
Cari
Video Tutorial

Tutorial Lainnya
Tautan Sumber Belajar
Hit Counter
IP Address Anda: 216.73.216.131
Browser Anda: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)

Anda tamu ke: