ininohara

Selasa, 27 Januari 2009

Algoritma? Penting nggak sich ...?

Aku bukanlah programmer kelas berat. Aku nggak menggunakan SQL-Query untuk mencari kunci motorku yang nyelip di bawah buku. Aku cuman programmer wannabie (programmer yang lagi belajar). Tulisan ini hanya opini pribadi, jadi nanti kalau ada yang nggak bener tolong comment aja. Okey

Dulu sewaktu aku duduk di bangku (baca : sekolah) kelas 2 SMK 2 Wonosari aku baru mulai mengenal istilah "algoritma dan pemrograman". Tertanam dalam pikiranku "Aku Harus Bisa Pemrograman". Lalu aku bertanya kepada ibu guru "Buk, buk (kebetulan guru pemrogramannya cewek, namanya bu Erna)....kalau pingin menjadi programmer apa yang pertama dan yang utama harus aku kuasai ???". Ibu guru itu tersenyum dan menjawab "ALGORITMA".

Algoritma

Pada dasarnya, algoritma adalah langkah demi langkah yang harus di ambil untuk menyelesaikan suatu masalah. Langkah ini sifatnya eksak karena komputer tidak bisa berfikir sendiri. Anda harus menginstruksikan dengan benar apa yang mesti komputer lakukan. Jika instruksi yang anda berikan salah atau tidak efisien, komputer tidak akan memperbaikinya sendiri. Andalah yang harus memperbaikinya.
Algoritma ? penting nggak sich ?

Mempelajari algoritma berarti anda mempelajari bagaimana menyusun langkah-langkah penyelesaian masalah. Sebuah masalah tidak hanya bisa diselesaikan dengan satu solusi. Ada beberapa solusi yang menghasilkan jawaban yang benar. Masing-masing solusi cocok untuk kondisi tertentu atau kadang ada satu solusi yang menjadi solusi terbaik dalam keadaan apapun. Mempelajari algoritma berarti anda mempelajari bagaimana memilih solusi yang paling tepat untuk masalah yang sedang anda hadapi.

Salah memilih solusi ( meskipun hasilnya benar ) akan berdampak buruk pada performace. Ada bisa saja memotong sosis menggunakan obeng. Tapi jelas prosesnya akan lebih lama dan hasilnya tidak akan sebagus saat anda menggunakan pisau. Contoh lain, saat anda harus memindahkan air, ya - air. Saat anda harus memindahkan air dari drum satu ke drum yang lain, menggunakan gayung mandi adalah pilihan yang baik. Namun saat air ada di sebuah truk tangki yang besar dan hendak digunakan untuk memadamkan api, menggunakan gayung mandi hanya akan menambah jumlah korban, yaitu Anda yang membawa gayung mandi. Itulah gambaran sederhana mengenai pentingnya algoritma.

Semakin canggih suatu solusi maka akan semakin kompleks algoritmanya. Saat anda hendak menyambungkan kabel ke papan PCB, ada beberapa pilihan yang tersedia. Anda bisa menggunakan solder atau bisa juga menggunakan isolasi. Meyambung kabel menggunakan solder hasilnya akan lebih baik dibandingkan menggunakan isolasi. Namun menyambung kabel menggunakan solder butuh keterampilan yang harus dipelajari dan dilatih terlebih dahulu sebelumnya.

Menggunakan solder tanpa pengetahuan yang cukup bisa berakibat buruk. Tentu anda tidak ingin mengambil resiko dan pada akhirnya lebih memilih isolasi. Begitu juga dengan algoritma. Jumlah solusi yang anda pilih sangat bergantung dari seberapa tinggi pengatahuan dan pengalaman anda dalam menyelesaikan persoalan.

Belajar algoritma berbeda dengan belajar PPKN - baca, hapalkan, pahami, hayati, dan aplikasikan. Belajar Algoritma mirip seperti belajar persamaan diferensial - pahami konsepnya lalu berlatihlah dengan cara menerapkan ilmu yang didapat di berbagai persoalan. Untuk bisa menyelesaikan persamaan diferensial, tentu anda harus memahami integral dan teknik penintegralan. Begitu juga dengan algoritma, untuk bisa pemrograman OOP, anda harus mengetahui konsep kelas, obyek, turunan, pewarisan sebelumnya.

Dalam kasus-kasus dasar, kebanyakan algoritma bisa dipelajari langsung tanpa modal ilmu apapun kecuali otak yang sehat. Kabar baiknya adalah, sampai level tertentu ( tergantung kepada orangnya ), anda bisa mempelajari algoritma sendiri tanpa harus dibimbing oleh seseorang. Cukup cari buku yang bagus, lalu mulailah belajar.



Label:

0 Komentar:

Posting Komentar

Berlangganan Posting Komentar [Atom]

<< Beranda