ketrampilan yang harus dimiliki programmer

Membaca kode sumber sebuah program, dari yang sederhana hingga relatif
kompleks, adalah keterampilan yang harus dimiliki oleh seorang programmer. Istilah
program di sini digunakan tidak hanya dalam pengertian aplikasi utuh, namun juga
mencakup level segmen kode, fungsi/subrutin, pustaka atau modul yang digunakan
oleh sebuah aplikasi utuh. Manfaat dari terbiasanya kita membaca program adalah
semakin banyaknya sumber informasi yang dapat kita gunakan untuk memecahkan
masalah.
Implementasi sebuah algoritma yang memodifikasi sebentuk struktur data
dalam sebuah program dapat kita adaptasikan ke dalam program yang kita buat
sendiri dengan konteks dan struktur data yang sama sekali berbeda. Terlepas dari
manfaat pedagogisnya, sayangnya keterampilan ini tidak banyak diajarkan (dan
setahu saya tidak pernah menjadi matakuliah tersendiri di perguruan tinggi), namun
baru terasa urgensinya saat kita disodori kewajiban memodifikasi program yang
ditulis dan sebelumnya dikelola oleh orang lain. Dengan hanya berbekal kode sumber
dan dokumentasinya (yang, patut disayangkan, tidak selalu komprehensif), dalam
keadaan seperti ini seorang programmer harus mampu melanjutkan pengelolaan
program tersebut tanpa menghancurkan organisasi kode yang telah ada atau
menambah kompleksitas yang tidak perlu ada. Di sisi lain keadaan ini akan jarang
ditemui oleh rata-rata programmer, karena lebih sering penulis asli dari program
itulah yang harus melanjutkan pengelolaan, setelah memindahkan perhatian pada hal
lain selama beberapa waktu.
Karenanya dapat disimpulkan bahwa secara umum, keterampilan yang harus
dimiliki seorang programmer terkait dengan komprehensi kode sumber program,
dengan derajat urgensi menurun(Hargo,2008), adalah:
1. Memahami kode sumber yang ditulis sendiri pada saat ia tidak lagi mengingat
detail mekanisme dari program tersebut.
2. Melanjutkan pengelolaan, menyesuaikan, mengembangkan dan (bila perlu)
merombaknya untuk menyesuaikan program dengan kebutuhan pengguna
tanpa mengorbankan kemudahan perawatan di masa mendatang.
3. Memiliki kemampuan sebagaimana dijelaskan dalam point 1. dan 2. untuk
program yang ditulis dan didokumentasikan oleh programmer lain.
4. Membaca program untuk memperkaya perkakas yang dimiliki seorang
programmer untuk memecahkan masalah.

0 komentar:

Posting Komentar

Silakan Tinggalken Pesan