[Tutorial] Memilih Bahasa Pemrograman Yang Terbaik
Jenis : Tutorial / Referensi Data.
Ditujukan Untuk : Umum, Level Dasar.
SourceCode : Tidak Tersedia, tapi dokumen ini bisa didapat di
http://www.geocities.com/jalangkung249/tutor (bahasa.zip)
Halooo...Haloo...Haloooo.... Masih dengan ZeAL... Walau sedang sakit akhirnya saya tulis tutorial/referensi ini... (Moga-moga bukan demam berdarah..) Banyak newbie yang belum bisa pemrograman, bertanya pada saya... "Bahasa pemrograman apa yang paling bagus..???". Atas dasar itulah mengapa saya menulis tutorial/referensi ini.
Semoga tutorial/referensi dibawah ini, dapat menjadi panutan bagi anda untuk menjawab pertanyaan diatas... Namun sebelumnya saya ingatkan bagi yang ingin membaca, untuk "membuka" hati dan pikiran. Dan bagi yang mempunyai hati dan pikiran yang sempit, terutama bagi yang merasa bahwa bahasa pemrograman ADALAH dirinya sendiri, maka saya anjurkan untuk tidak melanjutkan membaca.
A. WHERE TO START..??
Saya tau rasanya jadi newbie, saya pernah DAN masih merasakannya. Bingung harus minta bantuan siapa.. Walaupun ada yang memberi bantuan, biasanya "isi" omongannya bikin "down" duluan karena istilah-istilah teknis yang digunakan. Nah, bagi yang belum bisa bahasa pemrograman, saya sangat menyarankan bahasa pemrograman BASIC (Jangan salah dengan Visual Basic).
"Lho, kenapa BASIC..???", teriak seorang "PRO" diujung sana sambil mengangkat jarinya yang penuh upil...
Tipikal seorang newbie adalah "berantakan". Belum tentu seorang newbie hafal kegunaan tipe-tipe variabel (int, long int, byte, dan sebagainya). Mereka belum perduli apa itu encapsulation, inheritance dan sebagainya... Mereka belum butuh hal-hal tersebut...
Apa yang mereka butuhkan adalah "ruang" dan "media" untuk menjawab rasa keingintahuan mereka dalam membuat program tanpa dipusingkan oleh hal-hal teknis lainnya.. Nah, BASIC memberikan kesempatan itu...
BASIC adalah bahasa yang sesuai dengan namanya : BASIC (dasar). Disini newbie tidak perlu mendeklarasikan variabel terlebih dahulu, strukturnya bisa dibuat berantakan (goto dimana-mana) dan sebagainya, yang notabene memudahkan DAN menyenangkan bagi newbie untuk belajar...
Jadi yang perlu mereka lakukan adalah memahami bagaimana memulai program, melakukan input, melakukan proses, melakukan output dan akhirnya menghentikan program sesuai dengan tujuan yang mereka inginkan. Dalam tahap ini mereka secara tidak langsung akan belajar mengenai alur program dan logika/algoritma pemrograman dengan menggunakan proses IF-THEN, IF-THEN-ELSE, WHILE-WEND dan sebagainya...
Tujuan yang harus dicapai pada level ini adalah :
Membiasakan diri dengan lingkungan pemrograman; apa itu algoritma dan logika; bagaimana mendapatkan proses dengan hasil yang diinginkan dan sebagainya.
B. DONE... WHAT NEXT..???
Jika sudah "memahami" dunia programming (logika/algoritma dan sejenisnya), maka kita perlu ke tingkat yang lebih tinggi. Saya sangat menyarankan untuk mempelajari Turbo Pascal. "Hah..!!! Turbo Pascal..!!!", teriak seorang "PRO" dibarisan belakang sambil berkecak pinggang... "YA, Turbo Pascal...!!!", saya jawab dengan lantang sambil berkecak punggung... (sorry, de'jayus joke..

). Dalam bahasa pemrograman Turbo Pascal, kita akan diperkenalkan dengan struktur pemrograman. Apa itu Prosedur, Fungsi dan sejenisnya.. Kita juga akan diperkenalkan apa yang dimaksud dengan Encapsulation, Inheritance dan keluarganya... Kita juga diajarkan untuk menggunakan variabel bertipe Private, Public dan Global... Dan berbagai pemahaman-pemahaman lainnya TANPA memaksa.
Nah, disinilah mengapa saya menyarankan Turbo Pascal. Sifat TIDAK memaksa / fleksibelitas adalah kelebihan yang saya tekankan. Kita TIDAK DIHARUSKAN menggunakan inheritance... Kita TIDAK DIHARUSKAN menggunakan Pointer atau Record... dan sebagainya...
"Tapi itu 'kan penting..!!!", teriak seorang "PRO" dibarisan tengah sambil mengangkat-angkat buku "1001 tip C/C++" (Terbitan ANDI Yogyakarta. Good reference, BTW). YA, itu semua penting. Tapi dari sisi kebanyakan newbie, beberapa hal tersebut masih dianggap menyulitkan dan bikin "down" duluan. Namun seiring dengan berkembangnya pola pikir, newbie akan memahami arti kata "efisiensi".. Mereka akan mengerti dimana sebaiknya menggunakan variabel bertipe byte dan dimana sebaiknya menggunakan variabel integer...
Tujuan yang harus dicapai pada level ini adalah :
Memahami pemrograman yang terstruktur dan mempersiapkan pola pikir yang efisien..
C. HEY.. I DID IT..!!! WHAT ELSE..??
Langkah selanjutnya ditentukan dari pertanyaan berikut : "APA YANG INGIN SAYA BUAT...???".
"SAYA MAU BUAT DODOL..!!!", teriak seorang "PRO" yang stress dibarisan belakang...
"MAKAN TUH DODOL...!!!!", sahut saya sambil mengeluarkan jurus KAMEHAME..
Banyak pertanyaan yang harus dijawab pada tahap ini, misalnya :
- Pemrograman Visual atau Non Visual..???
- Di Windows, DOS, Linux, Mac..???
- Aplikasi Database, Security, System, Game..???
- dan lain-lain...
Misalnya seorang newbie ingin membuat program Visual untuk Database di platform Windows, maka ia sebaiknya memilih bahasa pemrograman visual yang berjalan di Windows yang dapat bekerja secara optimal untuk aplikasi Database, seperti Visual FoxPro atau Borland Delphi...
Perumpamaan inti dari Sub Bab ini adalah, "jangan sampai kita punya keinginan, kemampuan dan kesempatan untuk masuk Teknik Mesin, kok kita pilih jurusan Pertanian...".
Sperti kata pepatah : "Jaka sembung megang golog, Gak nyambung Goblog..!!"
Tujuan yang harus dicapai pada level ini adalah :
Mengenal banyak bahasa pemrograman dengan berbagai spesifikasi yang sesuai dengan tujuannya agar dapat bekerja secara optimal...
D. OK.. AND THEN...???
Jika anda sudah sampai tingkat ini, sepertinya anda sudah tidak cocok untuk dipanggil Newbie.
"TAPI KENAP..."
"KAMEHAMEHAAAAA...!!!!", teriak saya sambil memotong kata-kata seorang "PRO" yang ada diujung barisan sebelah kiri...
"PAAAAAAaaaaaaa........." teriak "PRO" tersebut yang terpental keangkasa...
Langkah selanjutnya adalah memilih "senjata" pamungkas yang akan digunakan pada tiap tugas diberikan... Sebagai contoh, untuk DOS saya menggunakan Turbo Pascal dan untuk VISUAL saya menggunakan VB atau Delphi... Namun itu bukan berarti diharuskan untuk menutup diri dengan adanya bahasa-bahasa pemrograman lain...
Pilih Bahasa Pemrograman yang sesuai dengan kebutuhan anda... Hasil riset yang diuji dan dinilai pada saya sendiri, membuktikan bahwa tingkat produktivitas akan meningkat jika saya menggunakan bahasa pemrograman yang benar-benar saya kuasai dan saya merasa nyaman untuk menggunakannya...
Tujuan yang harus dicapai pada level ini adalah :
Pilih bahasa pemrograman "pamungkas" yang COCOK untuk diri anda sendiri dan "COCOK" untuk tugas yang ingin dicapai...
E. AND NEXT...
Naxt.. next.. naxt.. next... Nanya mulu... udah belajar aje...
Semakin banyak belajar dan banyak tau mengenai bahasa pemrograman yang dikuasai maupun yang tidak, akan mempertajam pola pikir sebagai manusia secara umum dan programmer secara khusus...
F. CONCLUSION
Pernah ada yang mempermasalahkan, "Mana bahasa pemrograman yang terbaik..???". Menurut saya hal seperti itu tidak pantas untuk diperdebatkan. Itu sama saja mengatakan kalo bahasa jawa lebih baik dari Bahasa Batak, Bahasa Sunda lebih oke daripada Bahasa Padang, dan seterusnya..dan seterusnya... Tiap-tiap bahasa punya ciri tersendiri yang tentunya punya maksud tersendiri...
Tiap-tiap bahasa pemrograman punya kelebihan dan kekurangannya sendiri.. Ada yang kelebihannya banyak... ada yang sedikit.. ada yang kekurangannya banyak.. ada juga yang sedikit... Jika ada sebuah bahasa yang dianggap ULTIMATE, tiada tandingnya, bersifat universal, dan tetek bengek lainnya... maka seharusnya tidak akan ada bahasa yang baru muncul... semua orang akan menggunakannya untuk tujuan apapun... Tapi buktinya, bahasa pemrograman baru tetap saja bermunculan dengan berbagai ciri dan spesifikasinya (walaupun tidak / belum terkenal...). Ini membuktikan bahwa bahasa pemrograman sangat bergantung pada TUJUAN yang ingin dicapai dan KEADAAN yang dihadapi. Jadi sebaiknya jangan berpikiran sempit dengan menyatakan bahwa "Bahasa XXX adalah bahasa yang terbaik...!!!". Yah, mungkin terbaik buat anda, tapi belum tentu terbaik buat saya...
Untuk para newbie yang baru belajar pemrograman, cari referensi-referensi yang berhubungan dengan bahasa yang ingin dikuasai... Saya sarankan untuk menggunakan Internet untuk mencarinya... Cari sourcecode-sourcecode untuk dipraktekkan... (gak usah malu untuk copy-paste).
Saya juga menekankan untuk SELALU praktek menulis kode... Gunakan imajinasi anda untuk membuat program baru... Pikirkan algoritma yang tepat dan efisien... Dan jangan malu untuk bertanya dan merengek untuk minta jawaban yang mudah dimengerti dari para "PRO"...
HAPPY CODING...!!!!
ZeAL Thanks goes 2 :
- H0n3Y : 4 the inspiration and 4 The surprise...
- gamedevid : mediator
- and all of you who has been so nice to me...
Kalibata, Jakarta, Indonesia - February 16th, 2004