Apa itu Pemahaman Program?

Pemahaman program adalah kemampuan programmer untuk memahami apa yang dilakukan oleh kode sumber program komputer. Dalam instruksi ilmu komputer, pemahaman program sering diabaikan demi mempelajari mekanika dan sintaks bahasa komputer yang diajarkan. Menulis kode yang dapat dipahami, bagaimanapun, adalah kebutuhan universal, terlepas dari bahasa komputer yang digunakan untuk menulisnya. Jika seorang programmer menulis perpustakaan atau potongan kode, tetapi tidak ada yang dapat menentukan apa yang dilakukannya setelah itu, algoritma dan logika di balik kode itu dapat dengan mudah hilang. Hal ini semakin umum bahwa programmer tidak dapat menguraikan kode mereka sendiri, karena sering tidak ditulis dengan jelas dan intuitif.

Ada dua strategi utama yang dapat digunakan programmer untuk meningkatkan pemahaman program, dan masing-masing memiliki kelebihan dan kekurangannya sendiri. Metode pertama adalah menambahkan dokumentasi ke kode selama atau setelah pembuatan kode, dan yang kedua adalah menulis kode dengan penekanan pada strukturnya. Kombinasi dari kedua pendekatan ini sangat membantu bagi sebagian besar programmer, meskipun ada beberapa pembuat kode yang lebih memilih satu strategi daripada yang lain. Metode mana yang digunakan adalah masalah preferensi pribadi oleh programmer, dan setiap upaya untuk mengklarifikasi kode jauh lebih baik daripada tidak sama sekali.

Menambahkan dokumentasi ke kode adalah yang paling sederhana dari dua metode, dan bila dilakukan dengan baik dapat menjadi penopang yang sangat berguna untuk programmer yang tidak terbiasa dengan bahasa kode yang ditulis. Kebanyakan bahasa komputer memiliki gaya dokumentasi khusus untuk membantu dalam pemahaman program. Jika dokumentasi kode ditulis secara menyeluruh, langkah pertama programmer baru adalah membaca semua dokumentasi dan komentar untuk mendapatkan pemahaman tentang cara kerja program, tanpa harus membaca kode sama sekali. Alih-alih bergantung pada sintaks dan mekanik kode, pemrogram dapat melihat apa yang terjadi dalam teks biasa, kemudian menghubungkan teks dengan apa yang terjadi di tempat tertentu. Namun, ketika menambahkan dokumentasi ke kode, pemrogram harus berhati-hati, karena terlalu banyak dokumentasi dapat membingungkan dan mengganggu, daripada membantu.

Saat menulis kode dengan penekanan pada struktur, seorang programmer mengasumsikan bahwa pengelola lain yang melihat kodenya akan memiliki pengetahuan yang setara tentang sintaks dan mekanik bahasa. Terkadang, ini adalah asumsi yang valid, tetapi tidak selalu dapat diandalkan. Pemahaman program yang sebagian besar didasarkan pada struktur dimungkinkan, tetapi dibutuhkan lebih banyak pekerjaan dari pihak programmer asli untuk memfasilitasinya. Mekanika dan sintaks bahasa harus diikuti dengan tepat, serta semua konvensi gaya, dan semuanya harus konsisten. Saat menulis kode dengan cara ini, seorang programmer harus selalu sadar bahwa apa yang jelas baginya mungkin tidak jelas bagi orang lain.

Bahkan ketika menulis kode dengan tujuan untuk pemahaman program selanjutnya, dokumentasi tambahan atau modifikasi struktural mungkin diperlukan nanti. Ini adalah bagian alami dari pemeliharaan kode, dan bukan kegagalan di tangan programmer. Tugas seorang programmer adalah mengantisipasi sebanyak mungkin masalah pemahaman, tetapi semuanya tidak selalu tertangkap.