Search by

    Terakhir diperbaharui: Oct 23, 2020

    Teknik Coding

    Teknik coding diperlukan agar code yang ditulis mudah dibaca / readable dan mudah dipahami oleh manusia, dalam hal ini adalah programmer.

    Kita akan tekankan lagi bahwa code yang ditulis harus mudah dipahami oleh programmer bukan komputer.

    Komputer tidak akan mempermasalahkan jika kita menulis code dengan sembarangan selama itu bisa dieksekusi, masalah muncul ketika code yang kita tulis secara sembarangan dibaca oleh programmer lain.

    Sebagai contoh:

    Code 1

    1let x = 'brachio';
    2
    3if(x === 'brachio') {
    4 console.log('Hello ' + x);
    5}

    Bandingkan dengan

    Code 2

    1let dinoName = 'brachio';
    2
    3if(dinoName === 'brachio') {
    4 console.log(`Hello ${dinoName}`);
    5}

    Dari perbandingan di atas kita tahu bahwa Code 2 lebih mudah dipahami daripada Code 1, karena pada Code 1 terdapat variable x, dan kita tidak tahu apa maksud x ?

    Pentingnya Clean Code

    Seringkali membuat dan mengembangkan aplikasi dilakukan dalam sebuah team, sehingga kolaborasi yang baik antar anggota team menjadi hal yang sangat penting.

    Jika setiap developer tidak memperhatikan konsep clean code, maka akan terjadi banyak kendala yang sebetulnya bisa dihindari, seperti terhambatnya proses handover antar anggota team, lebih sulit mendeteksi bug, code review yang lebih lama dsb.

    Clean Code Technique

    Beberapa clean code technique sederhana yang bisa diterapkan:

    1. Meaningful Variable Name

    Gunakan nama variable yang mudah dibaca.

    Good

    1let dinoName = 'brachio';
    2
    3console.log(`Hi ${dinoName}`);

    Bad

    1let z = 'brachio';
    2
    3console.log(`Hi ${z}`);

    2. Function should do one thing

    Sebisa mungkin function hanya melakukan satu pekerjaan, jika terpaksa dilakukan pastikan resiko / side effect yang ditimbulkan kecil.

    Good

    1function getDinoStatus(dinoName) {
    2 ...
    3}
    4
    5function checkEmail(emailAddress) {
    6 ...
    7}
    8
    9function sendMessage() {
    10 ...
    11}
    12
    13const dinoStatus = getDinoStatus(dinoName);
    14const isEmailValid = checkEmail(emailAddress);
    15
    16if(dinoStatus === 'active' && isEmailValid) {
    17 sendMessage();
    18}

    Bad

    1function sendMessage() {
    2 // get dino active status
    3 // check if email address still valid
    4 // send message content
    5 ...
    6}
    7
    8
    9sendMessage();

    3. Fewer Function Arguments

    Usahakan function menerima argument seminim mungkin.

    Good

    1function sendMessage (emailAddress, message) {
    2 ...
    3}

    Bad

    1function sendMessage (dinoName, emailAddress, title, subject, content, signature) {
    2 ...
    3}

    4. Remove Duplicate Code

    Usahakan tidak ada duplicate code, karena duplicate code akan membuat proses mengubah code harus dilakukan tidak hanya satu kali.

    5. Remove dead code

    Code yang sudah tidak dipakai lebih baik dihapus. Proses code review bisa menjadi lebih lama dari yang seharusnya.

    Untuk lebih lengkapnya silahkan lihat di sini.


    Selain teknik coding di atas ada beberapa konsep atau prinsip yang umum dipakai untuk clean code.

    1. DRY

    Don't Repeat Yourself, konsep ini menjelaskan bahwa sebisa mungkin kita menghindari adanya duplicate code.

    Karena duplicate code membuat proses maintenance code menjadi tidak efisien.

    2. KISS

    Keep It Simple Stupid, sesuai namanya konsep ini menjelaskan bahwa penulisan code harus dibuat sesederhana mungkin.

    3. YAGNI

    You Ain't Gonna Need It, konsep ini termasuk konsep extreme programming(XP) dimana kita hanya menulis code ketika memang benar-benar dibutuhkan.