Clean Code : Supaya Kode Bersih

Dhanar Santika
2 min readApr 15, 2019

--

Salah Satu Penerapan Clean Code

Bahasa kerennya, terdapat 10 hal yang dilakukan oleh seorang software engineer, yaitu programming dan good programming. Programming merupakan hal yang setiap hari pasti kita lakukan, ya setidaknya hampir setiap hari. Kerjaannya paling ya hanya memenuhi requirement, program berjalan sesuai ekspektasi, beres. Namun yang sulit adalah menerapkan good programming ini. Perlu diingat dalam PPL kita tidak bekerja individual, melainkan berkerja secara tim. Kode yang telah kita tulis pasti akan dibaca oleh developer lain. Jangan sampai kode kita ditolak hanya karena yang mereview tidak dapat membacanya. Oleh karena itu kita perlu sebuah penerapan dalam ngoding, yaitu clean code.

Karakteristik dari Clean Code

  1. Elegan — Clean code harus enak dipandang (a.k.a mudah dibaca). Ibarat kata sebuah meja kantor yang setiap hari dibersihkan OB. :p
  2. Fokus — Setiap function, class, dan modul harus melakukan satu hal saja, tidak lebih dari itu. Jangan membuat sebuah kode superman yang dapat melakukan hal apa saja.
  3. Terurus — Setiap clean code pasti diurus/diorganisir dengan baik. Seseorang pasti butuh waktu untuk membuatnya menjadi simpel dan mudah dibaca.
  4. Lulus Tes — Clean code pasti akan lulus testing.
  5. Bebas Duplikasi.
  6. Minimal — Clean code dapat meminimalkan jumlah function, class, atau module.

Jika setidaknya karakteristik di atas dipenuhi, maka kita akan mendapatkan sebuah kode yang bersih. Kode yang nantinya juga akan direview oleh rekan kita akan dengan mudah dibaca. Ya kurang lebih beginilah ilustrasinya :

Sebuah Ilustrasi Code Review yang Sudah Lulus Sensor

Penerapan dalam Kelompok

Sebagai frontend developer, saya ingin memastikan data yang diinginkan muncul pada halaman situs. Sehingga sebelum browser melakukan render, browser harus memastikan bahwa data yang akan ditampilkan sudah ada. Maka dari itu, dalam angular, kita harus melakukan init terlebih dahulu seperti berikut :

ngOnInit

Setiap implementasi yang akan dilakukan kita bungkus ke dalam sebuah fungsi. Dalam hal ini kita ingin mendapatkan data feedback dan badge, sehingga kita dapat membuat dua fungsi yang berbeda. Perlu diingat bahwa nama fungsi harus self-explained. Sehingga (jika ini clean code) dalam code review, kode dibawah seharusnya sudah tidak perlu dibaca semua reviewer akan paham.

Penerapan get_badge

Sekian dari saya, semoga tulisan ini bermanfaat bagi kita semua :-)

--

--