Friday, November 04, 2011

Berceloteh tentang pengaturcaraan komputer

(Sebenarnya saya tidak ada topik atau idea penting yang ingin dibincang atau ditulis. Tapi tangan ini 'gatal' ingin menulis sesuatu.)

Walaupun mengenali komputer sejak Tingkatan 2, kelas pengaturcaraan saya yang pertama ialah ketika di Tingkatan 5. Waktu itu saya diajar tentang pengaturcaraan menggunakan bahasa MS QBasic. Walaupun tidak memahami kepentingannya yang sebenar, saya rasa seronok dapat mencuba sesuatu yang baharu. Tambahan pula dapat membina program-program berbentuk permainan. Ini mendorong saya mendalami bahasa pengaturcaraan tersebut. Biasanya saya memang tidak sabar menunggu waktu kelas, kerana hanya masa itulah saya berpeluang menulis atur cara.

Dek kerana seronok dan tidak ada komputer sendiri, selalunya saya curi-curi menulis ketika cikgu menerangkan latihan yang perlu dibuat. Beberapa kali saya ditegur kerana sibuk menulis atur cara, walhal cikgu baru hendak memberi penerangan dan belum disuruh membuatnya. Selepas ditegur, akurlah sebentar. Namun esoknya buat lagi. Akhirnya cikgu pun sudah malas mahu menegur kerana saya 'tidak makan saman'. (Lagipun atur cara yang saya buat itu memang seperti yang dikehendaki, jadi mungkin sebab itu saya dimaafkan.)

Dek kerana seronok dengan QBasic, saya cuba mempelajari bahasa C pula apabila terjumpa buku mengenainya di perpustakaan sekolah. Sayangnya, walaupun bersemangat, namun akhirnya putus asa kerana tidak ada pengkompil untuk membina atur cara. Yang saya ada dan tahu ketika itu ialah menggunakan penterjemah QBasic. Tapi itupun memadai untuk saya berlatih.

Maka saya berterusan menggunakan QBasic sehinggalah saya dapat belajar tentang pengkompil dan bahasa-bahasa seperti Pascal, Cobol, C, Visual Basic dan beberapa lagi semasa belajar di universiti (UPM). Sejak itu saya banyak menghabiskan masa dengan pengaturcaraan. Tambahan pula universiti menyediakan kemudahan buku dan makmal komputer. Jadi mudahlah saya mengasah bakat dan meningkatkan kemahiran melalui latihan dan pembacaan. Mungkin disebabkan terlalu banyak menghabiskan masa mengaturcara, maka minat saya terdorong ke situ. Hakikatnya sehingga sekarang saya amat meminati bidang pengaturcaraan dan terus mendalami pelbagai aspek yang berkaitan dengannya seperti pembinaan pengkompil, falsafah bahasa dan kaedah pengaturcaraan, dan sebagainya.

Pengaturcaraan sebenarnya tidak sukar untuk difahami dan dikuasai. Asasnya semua bahasa pengaturcaraan itu sama dari segi fungsi dan bentuknya. Oleh sebab itu, apabila kita sudah menguasai asas kemahiran pengaturcaraan kita mudah menguasai pelbagai bahasa pengaturcaraan yang berlainan. Asas menguasai kemahiran pengaturcaraan ialah pengetahuan. Kita perlu tahu apa sebenarnya tujuan 'pengaturcaraan'. Kita kena fahami semua konsep penting berkaitan proses penghasilan atur cara atau perisian. Misalnya konsep penterjemahan dan pengkompilan. Hal ini boleh dikuasai dengan membaca buku atau sumber bacaan lain (internet, manual pengkompil dsb).

Kemudian kita kena pilih bahasa pengaturcaraan. Cara memilih bahasa bergantung kepada minat dan keserasian kita terhadap sesuatu bahasa pengaturcaraan. Ada bahasa yang mudah dikuasai dan ada yang rumit. Pilihan juga bergantung kepada tugas yang perlu dilaksanakan (masalah yang cuba diselesaikan). Walaupun bahasa pengaturcaraan bersifat umum, namun selalunya setiap satu mempunyai kelebihan dan kekurangan. Pengetahuan ini juga boleh diperolehi melalui pembacaan.

Apabila kita sudah ada pengetahuan asas yang cukup, barulah kita membina aturcara. 'Cukup' bukan semestinya banyak ataupun tahu semua perkara. Memadai mengetahui asas pengaturcaraan dan cara asas membina aturcara menggunakan sesuatu bahasa X. Kalau hendak tunggu tahu semuanya, boleh jadi kita tidak akan mengatur cara langsung. Pengetahuan asas boleh ditambah dan diperluaskan melalui pembacaan yang berterusan. Kita kena sentiasa berlatih. Kemahiran pengaturcaraan seperti kemahiran yang lain juga. Ia perlukan pengetahuan, dan untuk mahir kita perlu rajin berlatih. Melalui latihan yang banyak juga dapat memberi kita pengalaman. Pengalaman unik bagi setiap individu dan ia tidak akan diperolehi dengan setakat membaca. Kadangkala pengetahuan yang diperolehi melalui hasil latihan lebih baik berbanding setakat membaca.

Selain banyak membaca dan berlatih membina atur cara, seseorang pengatur cara perlu tahu tujuan dia mengatur cara. Biasanya atur cara dibina untuk melakukan sesuatu tugas. Misalnya membina permainan komputer, serta perisian aplikasi seperti pangkalan (simpanan) data, penyunting dan sebagainya. Mengetahui tujuan akan membantu kita memilih bahasa pengaturcaraan yang sesuai. Selain itu, ia akan membantu kita dalam tugas pengoptimuman, iaitu menghasilkan penyelesaian yang terbaik bagi sesuatu tugas atau masalah. Tujuan bukan setakat yang umum. Sebaliknya setiap elemen pengaturcaraan yang kita gunakan perlu ada alasannya. Misalnya, kita guna bahasa C bagi menghasilkan perisian terbenam kerana ia pantas; Kita gunakan struktur data berbentuk tatasusunan (array) ialah kerana lebih pantas dicapai dan ringkas bentuknya (tetapi perlukan lebih storan) berbanding senarai terpaut; Kita guna algoritma X kerana sebab tertentu dan sebagainya. Jika tidak tahu tujuan dengan jelas, maka mungkin pengaturcaraan kita akan memakan lebih banyak masa berbanding jika ada tujuan.

Penulisan ini bukanlah ilmiah. Sekadar berkongsi sedikit pengalaman dan pengetahuan. Diharapkan penulisan ini dapat menjelaskan serba sedikit tentang bidang pengaturcaraan komputer.



No comments:

Post a Comment