بسم الله الرحمن الرحيم

"We are not in the position to apply pressure on anyone, we are a small country. But we do express our views on things. If we think that people are practicing double standards, we just say so, whether people listen to us or not is a different matter but we feel that we have to give our comment based on the truth." -Tun Dr. Mahathir Mohamad in 'Restoring Muslim's Dignity / Menebus Maruah Ummah'. Jabatan Perkhidmatan Penerangan Malaysia. KL. 2002

السلام عليكم ورحمةالله وبركاته - Blog ni berkisar tentang hal-hal berkaitan pembangunan Malaysia ke arah Wawasan 2020, terutama berkaitan pembangunan negara menurut acuan Islam. Kita mempunyai cita-cita yg besar tetapi masih berdiri pada asas yg tidak kukuh. Saat kita jatuh, baru kita sedar di mana kita berpijak. (Ilustrasi: Potret Ibnu Sina)







Khamis, 11 Disember 2008

Kepentingan Pengaturcaraan

[kemaskini : 22 Jan 2009]

Mungkin masih ramai yang belum mengetahui kepentingan pengaturcaraan. Malah ada juga di kalangan pelajar yang telah mengikuti program Sains Komputer beberapa semester di IPT tetapi masih tidak tahu mengapa mereka belajar atau melakukan pengaturcaraan. Ini memang mendukacitakan. Hal ini boleh diibaratkan seperti budak kecil 3 tahun yang sedang memegang not RM1000 (tidak tahu nilai benda yang dimiliki). Tapi tak mengapa. Kita sama-sama belajar, kerana selagi ada nyawa kita masih punya tanggungjawab untuk terus belajar. Hakikatnya setiap orang ada kelebihan dan kekurangan masing-masing. Bagi pelajar/individu berkenaan, perlulah mendalami dan mengulangkaji semula tujuan pembelajarannya supaya mudah mendapat pekerjaan kelak.

Kepentingan Perisian dan Aplikasi Komputer

Dalam zaman teknologi komputer begitu meluas, komputer digunakan di mana-mana, dan tidak terhad kepada perkakas elektronik yang dipanggil komputer peribadi (PC) saja. Bahkan peti ais dan mesin basuh sudah ada sistem elektronik, iaitu sebahagian komputer. Cuba bandingkan mesin basuh yang dihasilkan pada tahun 80-an dengan mesin basuh automatik sekarang. Apa yang berbeza? Salah satunya adalah cara ia berfungsi. Mesin basuh 'lama' berfungsi secara manual atau mekanikal. Tetapi mesin basuh automatik moden sudah boleh melakukan kerja basuhan secara lengkap (basuh, bilas, kering) dengan hanya menekan 1 butang saja. Semuanya dengan bantuan sistem elektronik.

Tanpa sistem elektronik, perkakas elektrik kurang berkemampuan untuk 'berfikir' sendiri dan memerlukan sistem mekanikal/elektrikal yang kompleks. Itupun jika ada. Dari segi saiz, ia lebih besar. Prestasinya juga jauh ketinggalan. Dengan adanya sistem elektronik, perkakas elektrik tersebut mampu melakukan pelbagai tugas secara automatik dan pantas dengan hanya memerlukan sistem yang bersaiz kecil. Mungkin kita tahu semua ini. Tapi tidak ramai yang tahu bahawa sistem ini menggunakan perisian untuk beroperasi.

Ramai di kalangan kita yang sudah mahir menggunakan komputer peribadi. Selain itu penggunaan komputer riba dan permainan video juga turut meluas. Kita sedang menggunakan komputer untuk melayari internet (membaca blog ini). Kita juga mungkin baru saja selesai menaip dokumen dan laporan untuk dihantar esok. Kawan-kawan kita pula sedang bermain perisian permainan dengan seronok sekali hingga terlupa soal makan-minum. Komputer tidak akan berguna tanpa perisian. Begitu juga konsol permainan video. Dengan adanya pelbagai perisian dengan pelbagai fungsi, maka semua perkakas elektronik dapat berfungsi dan dapat dimanfaatkan.

Perisian tidak wujud dengan sendiri. Ia juga suatu 'benda' dan perlu dibina. Mesin tidak mampu membina perisian*. Sepertimana proses menghasilkan suratkhabar, mesin hanya dapat mencetak tetapi kandungannya perlu dikarang, disunting dan disusun, sebelum dihantar ke kilang untuk dicetak. Perisian juga perlu ditulis/dikarang, dikompil dan disimpan ke dalam satu ruang storan. Selepas itu barulah boleh disalin dalam jumlah yang banyak ke dalam ruang storan setiap komputer atau perkakas elektronik. Jadi siapa yang membina/menulis perisian? (perisian bagi perkakas elektronik seperti mesin basuh automatik disimpan di dalam cip yang dipanggil ROM atau Read Only Memory).


Peranan pengaturcara

Pengaturcaraan adalah menyusun langkah-langkah penyelesaian masalah. Tapi sebelum kita mengetahui mendalam tentang pengaturcaraan, kita perlu tahu kenapa kita melakukannya. Analogi melakukan pengaturcaraan ialah umpama kita hendak mengajar orang yang belum tahu ABC supaya boleh mengeja 'penswastaan'. Susah kan? Namun berbanding manusia yang perlu masa untuk belajar, komputer hanya perlu diarahkan dan sepantas kilat boleh menyelesaikan masalah.

Komputer adalah mesin pengiraan yang pantas dan sophisticated. Komputer boleh menyelesaikan pengiraan-pengiraan yang melibatkan nombor dan formula yang kompleks dalam sekelip mata. Mungkin tak sempat kelip mata! Tetapi masalahnya, komputer tidak boleh berfikir dan bertindak sendiri*. Komputer perlu diarahkan untuk melaksanakan sesuatu, dan pengaturcara akan menulis arahan-arahan yang boleh difahami oleh komputer. Manakala arahan-arahan komputer kebanyakannya adalah dalam bentuk aturcara* (arahan bukan aturcara dipanggil interaktif). Dalam melakukan tugas pengaturcaraan, pengaturcara menyusun arahan-arahan dalam bentuk bahasa tabii atau bahasa percakapan yang dipanggil pseudokod, dan menukarkannya ke dalam bahasa pengaturcaraan paras tinggi (pengaturcara boleh juga terus menulis dalam bahasa pengaturcaraan). Kemudian aturcara ini ditukar pula kepada mesin. Komputer akan membaca arahan dalam bahasa mesin dan melakukan seperti yang diarahkan.

Arahan mesti jelas serta diskrit. Apabila memberi arahan kepada komputer, pengaturcara tidak boleh agak-agak, atau menulis arahan yang tidak tetap.

Andaikan kita mengaturcara komputer supaya mengira kadar ketumpatan air dalam sebuah tangki. Jika formula ketumpatan air tidak dimasukkan dengan jelas, komputer tidak boleh melakukan pengiraan dengan betul. Misalnya isipadu air mengunakan pembolehubah X, tetapi kemudiannya menggunakan pembolehubah Y. Jika menggunakan X, teruslah menggunakan X, kerana komputer hanya akan menggunakan apa yang kita arahkan.

Pengaturcara juga tidak boleh main agak-agak (assume). Kalau kita arahkan komputer mengira menggunakan 3 langkah, maka 3 langkah yang akan dilakukan. Jika kita mengarahkan komputer menggunakan 3 langkah tetapi menjangka komputer akan menambah langkah 4, maka jangkaan kita silap. Jika kita mengharapkan 4 langkah, maka kita perlu menulis arahan 4 langkah*.

Berbalik kepada persoalan, siapa yang membina perisian, maka pengaturcara adalah orang yang bertanggungjawab menghasilkan perisian dengan menulis aturcara. Perisian adalah output dari pengkompilan aturcara. Komputer masih memerlukan kepintaran manusia mengarahkannya untuk menyelesaikan masalah, dan pengaturcara melakukan pengaturcaraan untuk menghasilkan perisian. Maka bidang pengaturcaraan penting untuk dipelajari supaya pelbagai perisian yang menggerakkan perkakas elektronik dapat dihasilkan.


Kepentingan bidang pengaturcaraan dalam industri

Dengan meluasnya penggunaan komputer, bererti bertambahlah permintaan terhadap tenaga mahir dalam pengaturcaraan. Ini kerana pertambahan aplikasi komputer akan meningkatkan peluang dalam bidang pembangunan dan pemasaran perisian. Misalnya permintaan terhadap pembangunan aplikasi komputer yang umum (cth penyunting dokumen) mahupun spesifik (cth aplikasi pengawal untuk loji nuklear). Selain itu kebanyakan organisasi, syarikat dan perniagaan memerlukan komputer dalam memantapkan operasi. Justeru permintaan terhadap pembangunan aplikasi yang spesifik untuk satu-satu organisasi (custom made) juga akan meningkat. Manakala perkembangan teknologi internet sebagai medium pemasaran dan perniagaan juga mendorong permintaan terhadap perisian aplikasi internet. Semua ini belum mengambilkira perkembangan industri multimedia seperti permainan video dan perfileman yang menggunakan aplikasi 3D, CGI dll yang semakin mendapat sambutan. Justeru pasaran kerja akan lebih terbuka luas bagi mereka yang mahir mengaturcara.

Selain itu, dewasa ini ramai tenaga pengaturcara diperlukan. Ini kerana projek pembangunan perisian bukanlah satu tugas yang mudah dan remeh. Malah ianya boleh jadi kompleks, memakan masa berbulan-bulan untuk disiapkan dan diuji, dan boleh memakan belanja berjuta-juta ringgit. Ini samalah juga dengan projek-projek seperti pembinaan bangunan dan kereta. Dalam projek pembangunan perisian yang kompleks, pengaturcara diperlukan untuk menganalisa masalah yang memerlukan perisian untuk menyelesaikannya, membina aturcara, menguji dan memasangnya supaya dapat berjalan/berfungsi dengan baik. Membaiki masalah yang melibatkan perjalanan perisian hanya boleh dilakukan oleh pengaturcara*. Bukan seperti pendingin hawa yang dibina di kilang dan dibaiki/diselenggara oleh juruteknik saja!

Pengaturcaraan sangat penting untuk dipelajari selain untuk merebut peluang pasaran kerja. Hakikatnya, ramai orang terlepas pandang bahawa pengaturcaraan sangat penting untuk pelbagai bidang, malah boleh dijadikan sebagai hobi dan aktiviti masa lapang yang menyeronokkan. Sebenarnya kita tidak perlu terlalu bergantung kepada pengaturcara yang lulus program Sains Komputer. Sebaliknya kita sendiri boleh (dan adakala perlu) mempelajarinya untuk memudahkan tugas harian kita, walaupun kita terlibat dalam bidang lain seperti perakaunan, biologi dsb.

Jika kita seorang ahli penyelidik biologi, mempelajari pengaturcaraan berkaitan boleh membantu kita membina perisian yang kita sendiri perlukan. Misalnya kita menyelidik tentang struktur molekul DNA (contoh). Mungkin orang belum pernah melihat atau mempelajari molekul DNA. Jadi bagaimana akan ada perisian yang boleh menganalisis struktur molekul DNA kerana mana-mana pengaturcara pun tidak mengetahui tentang DNA? Tetapi jika penyelidik yang mahir tentang molekul DNA ini boleh mengaturcara, maka dia boleh membina perisian penganalisis dan memudahkannya melakukan eksperimen/analisa. Ini kerana pengiraan menggunakan perisian dapat menjimatkan masa dan tenaga (berfikir). Lebih menguntungkan jika orang lain pun ingin menggunakan perisian itu untuk kegunaan mereka.

Harapnya jelaslah sudah kepentingan pengaturcaraan pada kita semua. Mungkin saya akan tambah lagi jika ada bahan dan kesempatan. Insya'allah.

(*) Nota: ada pernyataan yang sebenarnya lebih kompleks dan perlu penerangan lebih terperinci, tetapi dimudahkan untuk memudahkan kefahaman.

7 ulasan:

  1. br sampai sinih...ermm..educator ek?..well. rajin2 la menyebar ilmu..:)

    BalasPadam
  2. iya...
    selamat datang dan terima kasih.
    wajib belajar (benda yg baik), dan dituntut mengajar (pd yang lain)

    :)

    BalasPadam
  3. cikgu...cikgu....9sambil angkat tangan)

    cikgu boleh buat pengaturcaraan cinta tak?
    senang sikit, ikut step mudah dan terus kawen. tidak payah main-main hati perasaan dan dosa.

    ni bukan saya tanya
    ni kawan saya tanya. hehe

    BalasPadam
  4. salam jenguk..
    dari bidang yang sama, cuma lelucon ni sudah bnyk pengalamannya:P

    BalasPadam
  5. ainunl - cinta bukan boleh diaturcara. Kalau cinta boleh diaturcara, tak rasa bahagia la (sbb jd mcm robot, takde perasaan hehehe).

    banat/safa/hazwani - komputer ke? saya pun 'baru', cetek pengalaman. 'Mengajar' pun satu kaedah belajar juga :)
    Apapun sama-sama kita menyumbang (bakti) pd masyarakat! Insya'Allah

    BalasPadam
  6. pengaturcaraan- isnt it programming??

    haha...malayiarizing english.

    BalasPadam
  7. Mmg pun.

    Saya tak suka 'kayu bedik/kayu ria' utk 'joystick'

    Tapi istilah 'pengaturcaraan' saya anggap istilah yg menarik dan lebih sdap bunyinya berbanding 'programming' :)

    BalasPadam