diskusi.tech (beta) Community

loading...
Cover image for Manfaat Ngoding Rapi

Manfaat Ngoding Rapi

yehezkielgunawan profile image Yehezkiel Gunawan ・4 min read

Pendahuluan

Dah yang penting selesai, deliver ke client, kelar dah.
Begitulah ucapan saya saat pertama kali bekerja sebagai fulltime frontend engineer. Begitu ada report bug dari client, habis sudah rencana weekend yang damai dan tentram itu.

Seiring berjalannya waktu, akhirnya saya sadar bahwa kebiasaan ini adalah toxic. Mungkin untuk beberapa saat aplikasi yang dibuat berjalan dengan lancar. Namun, ketika client memberikan request baru entah itu perbaikan fitur atau pembuatan fitur baru, pastinya saya harus mengulik kembali kode yang telah saya buat itu. Dan ya, bisa ditebak akhirnya jadi pusiiiaaaaang sendiri.

Rupanya saya tidak sendirian. Fenomena ini ternyata cukup umum ditemui dalam dunia pemrograman bahkan di level company sekalipun.

Apa sih yang menyebabkan kok banyak ya programmer yang asal koding? Emang dampaknya apa kalau begitu?

Terus gimana caranya biar bisa bangun kebiasaan ngoding yang efektif dan rapi? Apa sih manfaatnya?

Oke, kita bahas satu-satu ya di sini.

Kenapa Banyak Programmer Masih Asal Koding?

Faktor pengalaman adalah faktor yang paling sering ditemui. Biasanya (tidak juga sih, tapi kebanyakan yang pernah saya temui), ketika seseorang baru belajar soal programming, tak jarang struktur kode, file, folder, bahkan penamaan variabel masih terkesan amatir. Tapi tidak apa-apa, saya pun pernah di tahap ini dan ini normal kok. Selama konsisten untuk belajar dan upgrade diri terutama perihal konsistensi untuk membuat kodingan yang lebih rapi dan mudah dipahami (readable), lama kelamaan kebiasaan baik itu akan terbangun dengan sendirinya.

Selain itu, ada juga faktor environment atau lingkungan di mana tempat si programmer bekerja. Seringkali, bukannya malas untuk ngoding rapi. Deadline yang mepet dan request atau task bertubi-tubi seringkali membuat programmer menjadi tergesa-gesa dan tidak memiliki waktu untuk merapikan kodenya. Apalagi kalau mendapat legacy code (kodingan project yang sudah dibuat oleh programmer sebelumnya) yang sudah terlanjur "rusak", akan membutuhkan tenaga dan waktu ekstra untuk merapikannya kembali.

Dari pengalaman saya ini, tidak hanya faktor secara individu dari si programmer yang menyebabkan kodingan yang ia hasilkan "berantakan", melainkan faktor lingkungan juga berperan besar dalam hal ini.

Dampak dari Asal Koding

Teman-teman pembaca sudah pasti bisa menebak apa yang akan terjadi kalau kebiasaan buruk ini terus dilakukan. Kurang lebih inilah efek jangka panjang apabila sang programmer masih terus asal koding tanpa pikir panjang:

  • Saat bug menyerang, habislah sudah. Tak perlu dijelaskan, ini sudah cukup horror ketika dialami, hahaha.
  • Akan kesulitan sendiri ketika harus menjumpai kode yang sebelumnya telah dibuat saat harus update fitur. Ketika hanya Tuhan yang tau maksud isi kodingannya, maka malanglah nasibnya hehehe.
  • Harus buka kodingan saat update konten yang dibuat dengan hard-code. Betul hard-coding terasa cepat dan mudah saat develop suatu aplikasi atau produk. Tetapi untuk jangka panjang, ketika ada update, pastinya si programmer akan berulang-ulang membongkar isi kodingannya yang tentunya akan melelahkan.
  • Kualitas program yang dibuat pun menurun. Tentu saja kodingan yang tidak efektif, apalagi cenderung redundant akan mempengaruhi performa dari aplikasi yang dibuat.

Cara Bangun Kebiasaan Ngoding Rapi

Dari tadi kita sudah bahas penyebab dan dampak dari kebiasaan ngoding yang berantakan. Sekarang mari kita bahas bagaimana cara membangun kebiasaan agar saat koding, kita bisa menghasilkan kode yang berkualitas. Gimana caranya?

  • Mulai dari folder structure. Coba mulai pisahkan folder-folder sesuai peruntukannya. Contohnya apabila membuat project dengan React bisa dilihat di sini mengenai File Structure. Agak sulit menjelaskan ini karena bisa panjang sekali dan preferensi setiap orang berbeda-beda.
  • Hindari kebiasaan hard-coding. Hard-coding singkatnya adalah penulisan kode statik dimana pengunjung tidak dapat mengubah nilainya karena ditulis langsung melalui text-editor. Untuk lingkup kecil mungkin tidak terlalu berpengaruh, tetapi kalau sudah besar, sebaiknya konten-konten yang akan ditampilkan di aplikasi yang dibuat dimuat di dalam Database atau CMS saja. Gak mau kan harus bolak-balik bongkar kodingan hanya untuk update teks, hehehe.
  • Menggunakan linter. Nah di Javascript/Typescript sendiri kita sudah bisa menggunakan ESLint yang merupakan linter untuk mengatur style coding agar tetap konsisten dan sesuai dengan style yang kita atur. Simpelnya, dengan ESLint kita akan "dipaksa" ngoding rapi sesuai rules yang telah di-define. Secara garis besar ada 3 jenis style guide yang populer, yaitu AirBnB, Google, dan standar. Detailnya bisa dilihat di sini.
  • Menggunakan bantuan plugin Prettier. Nah plugin ini bisa diinstall di VS Code. Gunanya untuk membantu merapikan struktur kode yang telah kita buat, sehingga menjadi lebih nyaman saat dipandang.
  • Menggunakan Conventional Commits untuk membantu membuat commit message yang sebagaimana mestinya ketika push ke repository Github atau Gitlab. Tidak hanya kodingan yang harus rapi, commit message pun patut diperhatikan kualitasnya agar memudahkan proses versioning dan debugging saat diperlukan.

Sebenarnya ada alternatif tools lain selain yang saya sebutkan ini, kalau ada yang tahu dan pernah pakai silahkan tulis di kolom komentar ya.

Nah selain menggunakan tools, ada faktor-faktor lain yang tidak kalah penting untuk dilakukan agar kualitas kodingan yang dibuat bisa lebih baik. Ya, itu adalah planning sebelum koding. Mudah untuk dikatakan, tetapi sesulit itu juga menjaga konsistensinya.

Dampak dari Ngoding Rapi

Mungkin saat mencoba best practice yang telah disebutkan, rasanya akan sulit sekali. Saya pun pernah merasakan saat-saat di mana, saya sendiri frustasi sendiri ketika mendapati kodingan saya error karena tidak sesuai dengan rules dari linter yang telah saya define.

Tapi tenang, semakin dibiasakan justru itu akan semakin baik untuk si programmer itu sendiri. Bahkan orang lain yang membaca kodingan kita pun jadi lebih cepat paham karenanya. Apa aja dampak lainnya dari kebiasaan ngoding rapi ini?

  • Memudahkan dan lebih cepat paham ketika membaca kembali kode yang sudah dibuat. Dalam tim, tentunya harus dipikirkan kembali agar kodingan yang dibuat tidak hanya dipahami oleh si pembuatnya saja, tetapi juga harus dipahami oleh rekan-rekan setim. Ini tentunya akan memudahkan proses debugging atau integrasi saat diperlukan.
  • Meningkatkan kualitas dari aplikasi atau program yang dibuat. Kebalikan dari dampak negatif yang sebelumnya, dengan kebiasaan ngoding rapi ini tentunya akan berpengaruh positif bagi performa dan kualitas dari aplikasi yang dibuat.
  • Mengurangi frekuensi "bongkar" kodingan. Karena konten-konten dari aplikasi atau program yang dibuat dimuat di Database atau CMS, tentunya user bisa mengubahnya lewat akses yang diberikan tanpa harus "bongkar" kodingan.

Sebenarnya banyak dampak lain yang tak kalah menarik dari kebiasaan ini. Tapi setidaknya, inilah pengalaman saya saat saya mulai membiasakan ngoding rapi. Gimana teman-teman, ada kisah menarik saat kalian menerapkan ini? Komen dan diskusikan di kolom komentar ya.

Discussion

pic
Editor guide