IT Forum

Menulis program atau yang sering disebut dengan “ngoding” bukan pekerjaan yang mudah. Ketika sebuah bahasa pemrograman digunakan, maka si programer harus mengikuti aturan atau tata bahasanya. Nah, yang sering terjadi adalah, walaupun sudah mengikuti tata bahasa pemrograman yang digunakan, tanpa disadari perintah atau logika yang telah ditulis memiliki sebuah kesalahan yang bisa jadi akan menyebabkan aplikasi atau program akan berhenti atau memberikan sebuah kesalahan (error) bahkan sampai ke fault, saat itulah kita menemukan sebuah bug.

Ada beberapa jenis bug yang sering ditemui, diantaranya:

  • Kesalahan penulisan sintaks
  • Kesalahan saat runtime
  • Kesalahan logika

Kesalahan Penulisan Sintaks

Sintaks adalah aturan penulisan kode yang telah distandarkan oleh bahasa atau framework tertentu. Jika kita tidak mengikuti aturan tersebut, maka program yang kita tulis tidak akan berjalan dengan baik.

Kesalahan penulisan sintaks biasanya terjadi saat kita melupakan beberapa atribut yang terlihat sepele namun bersifat penting seperti tanda petik ("), titik koma (;), tanda kurung ([{<>}]), atau menulis perintah yang kurang lengkap. Meskipun sepintas sederhana, namun kesalahan seperti ini bisa memakan waktu cukup lama untuk mencarinya jika belum terbiasa.

Kesalahan saat runtime (runtime error)

Kesalahan penulisan sintaks biasanya akan langsung muncul begitu aplikasi akan di eksekusi atau saat akan dikompilasi. Ada jenis kesalahan yang tidak muncul saat aplikasi pertama di eksekusi, tapi akan muncul setelah program dijalankan. Kesalahan ini muncul ketika sistem tidak bisa mengidentifikasi suatu sintaks dan aplikasi gagal mengeksekusi saat program sedang berjalan.

Kesalahan logika

Jenis kesalahan ini adalah yang paling sulit untuk dicari karena jarang memunculkan pesan error. Konsekuensi dari kesalahan logika adalah kesalahan hasil perhitungan (tidak selalu matematis). Sistem tidak dapat mengenali kesalahan ini karena penulisannya sudah mengikuti aturan-aturan yang benar akan tetapi karena "rumus"-nya salah, maka hasilnya ikut salah.

Berikut ada 5 Tips ketika mencari sebuah bug :

  1. Jangan Panik

Jangan Panik adalah hal yang paling pertama dilakukan saat menemukan bug. Berusahalah untuk tetap tenang, karena cepat atau lambat suatu bug akan ditemukan dan diperbaiki. Jika panik, maka akan terburu-buru dan menghasilkan analisis yang salah.

  1. Gunakan Syntax Highlighter

Mayoritas editor teks dan IDE modern telah memiliki syntax highlighter. Fitur ini sangat membantu untuk menemukan kesalahan sintaks. Sintax highlighter akan membuat kode-kode yang ditulis dengan bahasa atau aturan tertentu supaya lebih mudah ditangkap oleh mata. Contohnya, ia akan memberikan warna yang berbeda sesuai dengan jenis variabel, memberitahu variabel mana yang belum pernah dipanggil atau di inisialisasi, memberitahu saat ada pencampuran indentasi spasi dan tab, memberitahu jika nama variabel yang dipanggil belum dideklarasi, dsb. Seperti contoh pada gambar dibawah ini :

Sublime Text, Visual Studio Code, atau Atom, sudah otomatis mengaktifkan fitur syntax highlighter untuk bahasa-bahasa yang umum seperti Python, PHP, Javascript, Java, C/C++, dll. Jika menggunakan framework, kita mungkin ingin menambahkan syntax highlighter khusus untuk framework tersebut. Beberapa IDE seperti Eclipse, IntelliJ IDEA, atau Netbeans bahkan bisa langsung memberitahu jika kekurangan titik koma, kelebihan atau kekurangan tanda kurung, dsb.

  1. Gunakan Static Code Analysis

Static code analysis (SCA) adalah sebuah program yang mengotomatiskan proses analisis kode program. Program seperti ini bisa mendeteksi kesalahan penulisan program (secara sintaks bukan logika), kesalahan penggunaan multithreaded, mendeteksi memory leak, mendeteksi vulnerability (celah keamanan) yang mungkin mengancam aplikasi, dan lain sebagainya.

  1. Gunakan Debugger

Ada saja kesalahaan runtime yang tidak dapat terdeteksi oleh contoh program di atas sehingga kita perlu menggunakan debugger.

Debugger adalah aplikasi khusus yang memungkinkan programmer untuk menghentikan eksekusi program di baris tertentu (breakpoint), memeriksa nilai dari variabel/objek, kemudian melanjutkan eksekusinya baris per baris.

Mayoritas IDE seperti Eclipse, Netbeans, dan IntelliJ IDEA sudah memiliki debugger bawaan. Beberapa editor teks macam Visual Studio Code juga memilikinya (editor lain mungkin perlu ditambahkan plugin khusus). Biasanya, setiap bahasa memiliki debugger sendiri-sendiri yang bisa dieksekusi secara terpisah (menggunakan command line), dan editor-editor di atas mengimplementasi debugger yang telah dirilis pengembang bahasa atau framework-nya.

Kesalahan logika hanya bisa ditemukan dengan melihat nilai-nilai yang dihasilkan dari suatu "rumus". Karena kita bisa menganalisis nilai-nilai variabel saat program sedang berjalan serta dapat menghentikan eksekusi dibaris tertentu sesuka hati, maka debugger akan memuluskan pekerjaan mencari kesalahan tersebut.

  1. Coba untuk Searching

Walaupun sudah menggunakan banyak tools, tetap memungkinkan bagi kita untuk melewatkan sebuah bug. Mungkin karena kita yang kurang teliti dalam penulisan sebuah sintaks. Apabila tidak bisa memecahkan masalah bug tersebut. Cobalah untuk searching di Internet dengan kata kunci pesan kesalahan sintaks kita, biasanya ketika pesan kesalahan sintaks langsung di salin ke dalam mesin pencari, maka banyak sekali cara penyelesaian bug yang tertera di dalamnya.

Jika dirasa belum cukup hanya sekedar searching, cobalah untuk mencari jawabannya di dalam forum stackoverflow, Stackoverflow adalah website Q& A (tanya jawab) yang fokus kepada permasalahan teknis yang dihadapi programer. Satu hal yang pasti,  diharuskan bertanya dalam bahasa inggris, dalam mencari solusipun harus menggunakan bahasa inggris.

Selain itu sangat banyak grup-grup diskusi tentang pemrograman di platform online seperti Facebook, Telegram, atau WhatsApp atau forum forum lainnya. Tempat ini sangat cocok untuk menanyakan hal-hal yang tidak bisa kita selesaikan sendiri. Meskipun begitu, gunakanlah kata-kata yang baik dan sertakan pertanyaan dengan contoh kode atau gambar kesalahan yang muncul.

Sumber : Codepolitan
Rewrite : inixindo

Anda bisa mengikuti training Pemrograman yang kami sediakan antara lain:

You are not authorised to post comments.

Comments powered by CComment

Silahkan Login untuk memberikan komentar.