26
Apr
10

Komentar pada kode adalah tanda kelemahan

Berkebalikan dengan post saya minggu lalu yang menyatakan bahwa komentar dalam source code itu penting, pada post ini saya akan mencoba menjelaskan kenapa kita tidak perlu memberi komentar pada kode kita.

Tepat di hari saya menulis post tentang tips mengomentari kode, saya menemukan post tentang menghilangkan komentar sebagai jalan menuju kejelasan. Kinda random but thanks Google Reader! :D
Quote dari post tersebut:

“The proper use of comments is to compensate for our failure to express
yourself in code. Note that I used the word failure. I meant it.
Comments are always failures.”

Contoh kasus penggunaan komentar dan tidak:

int n=item.count; //number of items
if(n<=5){
     for(int i=0;i<n;i++){
         //check if all items are exist
         if(storage.contain(item[i]){
             print(“item” + i + “valid”);
         }
         else
             return 2;  //error code for item not in storage
     }
}
else
     return 1; // error code for item more than 5

bandingkan dengan kode berikut:

int numberOfItems = item.count;
if(numberOfItems <= MAX_ITEM_NUMBER){
     if(IsAllItemOwned())

         SuccessStoringItems();
     else
         ErrorItemNotExist();
}

else

    ErrorItemExeedLimit();

Tanpa menggunakan komentar, kode pada bagian kedua tetap mudah dimengerti. The code is self-documenting. Nama variabel dan nama fungsi sudah cukup merepresentasikan isi atau tujuan dari potongan kode tersebut. “If you have something important to say, put it in the code.

Berikut adalah beberapa kelemahan komentar:

  1. Komentar tidak berubah seiring perubahan kode. Dengan menggunakan refactoring tools pun komentar tidak dapat diperbaiki secara semantik, kalaupun ada hanya sebatas perbaikan secara syntax.
  2. Komentar yang salah lebih parah dari kode sangat kompleks yang tidak memiliki komentar, karena dapat membuat orang bekerja ke arah yang salah.
  3. Komentar menjelaskan sesuatu yang absolut, sedangkan variabel yang memilki nama yang baik menjelaskan dengan abstraksi konsep. Ambil contoh nilai 5 pada kode pertama di atas, dan MAX_ITEM_NUMBER, keduanya memiliki maksud yang sama, namun penamaan yang baik memberi abstraksi yang lebih tinggi.l
  4. Komentar tidak muncul di stack trace atau fitur debugging lainnya. Ambil contoh jika fungsi Error di atas gagal, kita perlu memeriksa kembali pemanggilan Error mana yang membuat kesalahan dan lain-lain.
  5. Membaca komentar itu opsional, membaca kode itu wajib. Kita tidak bisa menjamin semua orang akan membaca komentar kita dengan baik, apalagi kalau komentarnya cukup panjang dan detail.
  6. Tambahan dari saya pribadi, komentar menambah jumlah baris kode cukup banyak :D

Hampir setengah minggu saya gunakan untuk mencoba teknik ini, dan cukup membuat kode saya lebih rapi dan lebih mudah dibaca. Rencananya di akhir bulan ini saya akan coba evaluasi teknik mana yang lebih cocok untuk kondisi saya sekarang.

Bagaimana menurut Anda? Pentingkah memberi komentar pada kode Anda? :D


1 Response to “Komentar pada kode adalah tanda kelemahan”


  1. 1 vein
    Monday, 26 April 2010 at 08:17:30

    sangat setuju bung Depe, menurut saya komentar berelbihan pada suatu code merupakan kekurangan pada code itu sendiri.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.

Join 256 other followers