TOPIK 06 BAHASA PENGATURCARAAN

Embed Size (px)

Citation preview

BAHASA PENGATURCARAAN

TOPIK 6

TOPIK 6

BAHASA PENGATURCARAAN

PENGENALANDalam topik ini kita akan mengenali dengan lebih dekat apakah yang dimaksudkan dengan bahasa pengaturcaraan. Atur cara komputer dibangunkan dengan menggunakan bahasa pengaturcaraan. Atur cara adalah satu senarai arahan untuk diikuti komputer agar data dapat diproses. Proses untuk menghasilkan atur cara dinamakan pengaturcaraan. Pengaturcaraan juga dikenali sebagai pembangunan perisian dan merupakan langkah-langkah untuk menghasilkan senarai arahan. Langkah-langkah dalam pengaturcaraan adalah spesifikasi atur cara, rekabentuk atur cara, kod atur cara, ujian atur cara, dokumentasi atur cara dan penyelenggaraan atur cara.

OBJEKTIFDi akhir topik ini anda seharusnya dapat: 1. memahami konsep bahasa pengaturcaraan; 2. mengetahui 5 generasi bahasa pengaturcaraan; dan 3. mengetahui 10 bahasa pengaturcaraan.

6.1

BAHASA PENGATURCARAAN

Ia juga boleh disebut sebagai bahasa buatan untuk pengaturcaraan komputer. Secara amnya, komputer itu sendiri adalah dungu dan tidak boleh berfikir dengan sendiri. Komputer memerlukan arahan dari manusia untuk melakukan sesuatu tugas yang amat mudah (seperti melakukan operasi 2+2) hingga ke satu tugas yang paling sukar (seperti melancarkan kapal angkasa ke Marikh). Oleh itu, manusia menggunakan bahasa pengaturcaraan untuk berkomunikasi dan menyuruh komputer melakukan sesuatu tugasan. Arahan dalam atur cara disusun secara logik menerusi proses pengaturcaraan. Terdapat banyak jenis bahasa pengaturcaraan yang boleh digunakan oleh pengaturcara untuk berhubung dengan komputer. Bahasa pengaturcaraan menyerupai bahasa tabii seperti Bahasa Inggeris dalam beberapa aspek. Contohnya, ia mempunyai perkataan, simbol dan sintaks. Untuk menulis atur cara, pengaturcara perlu mengetahui perkataan, simbol dan sintaks bahasa pengaturcaraan yang akan digunakan. Terdapat banyak bahasa pengaturcaraan seperti APL, Pascal, Java, Perl, Eifel, C, C++, Basic, Fortran, Lisp, Scheme, BETA, Lua, Visual Basic, Prolog, Haskell, Hugs dan COBOL. Sebenarnya dianggarkan terdapat lebih 1000 bahasa pengaturcaraan di dunia. Setiap bahasa pengaturcaraan dicipta untuk tujuan yang berlainan seperti yang ditunjukkan di dalam Jadual 6.1.

88

OUM

TOPIK 6

BAHASA PENGATURCARAAN

Jadual 6.1: Evolusi Bahasa Pengaturcaraan

Dekad50an 60an - 70an 90an

Bahasa PengaturcaraanLisp, FORTRAN BASIC, C, SmallTalk, Pascal, Scheme Objective-C, C++, BETA, Java dan Prolog

Ada juga bahasa untuk tujuan khas seperti pengaturcaraan selari seperti ConcurrentC, Orca dan Leda. Rajah 6.1 menunjukkan model hubungan di antara pengguna, bahasa atur cara dan komputer.

Rajah 6.1: Model hubungan di antara pengguna, bahasa atur cara dan komputer

6.2

KENAPA KITA PERLU MEMAHAMI BAHASA PENGATURCARAAN

Pengguna boleh menggunakan apa sahaja bahasa pengaturcaraan yang diketahui dalam menyelesaikan masalah. Namun demikian, jika pengguna hanya tahu satu bahasa pengaturcaraan sahaja, penyelesaian yang digunakan mungkin tidak optimal atau efisyen. Oleh itu, pengguna perlu memahami keupayaan sesuatu bahasa pengaturcaraan supaya pengguna dapat menilai kelebihan dan kelemahan bahasa pengaturcaraan tersebut dalam menyelesaikan masalah yang dihadapi. Setelah membuat penilaian, pengguna boleh menggunakan kaedah yang optimal dari beberapa kaedah yang difikirkan untuk menyelesaikan masalah. Di antara faedah memahami bahasa pengaturcaraan adalah; (i) Mengetahui kelebihan bahasa pengaturcaraan dan di mana ia sesuai digunakan. Sebagai contoh, jika melibatkan pembangunan satu prototaip secara pantas, adalah lebih efisyen menggunakan bahasa skrip seperti Python dari menggunakan C atau C++. Memahami kelemahan bahasa pengaturcaraan. Setiap bahasa sesuai untuk satu bidang dan tidak efisyen untuk bidang lain. Sebagai contoh, untuk membangunkan GUI, adalah lebih efisyen menggunakan C++ atau Java berbanding dengan C. Untuk pengiraan yang banyak, FORTRAN adalah lebih sesuai dari JAVA atau C.

(ii)

(iii) Menghasilkan penyelesaian yang lebih efisien. Jika pengguna memahami bahasa pengaturcaraan, pengguna boleh menggunakan bahasa yang paling optimal untuk menyelesaikan masalah yang cuba diselesaikan. Misalnya, jika penyelesaian memerlukan capaian kepada pangkalan data, adalah lebih baik menggunakan bahasa skrip seperti Python sebagai penghubung berbanding dengan C atau C++.

OUM

89

BAHASA PENGATURCARAAN

TOPIK 6

(iv) Bahasa pengaturcaraan akan mempengaruhi cara pengguna berfikir dalam menyelesaikan masalah. Misalnya, bahasa berasaskan objek akan membuat pengguna berfikir cara penyelesaian masalah berasaskan objek, dan bahasa berasaskan logik akan membuat pengguna berfikir cara penyelesaian berasaskan logik. (v) Bahasa pengaturcaraan adalah satu alat untuk menyelesaikan masalah dengan menggunakan komputer. Kebanyakan masalah adalah lebih efisyen jika diselesaikan oleh mereka yang pakar dalam bidang yang tertentu. Oleh itu, mereka yang merupakan pakar dalam bidang itu boleh mempelajari bahasa pengaturcaraan untuk menyelesaikan masalah mereka.

Adalah menjadi kebiasaan untuk seorang pengaturcara mengetahui lebih dari satu bahasa pengaturcaraan. Lazimnya, setiap bahasa pengaturcaraan mempunyai ciri-ciri yang hampir sama. Setelah mempelajari satu bahasa pengaturcaraan, adalah mudah untuk belajar bahasa pengaturcaraan lain kerana konsep pengaturcaraan adalah sama, hanya sintaks bahasa yang berubah.

Latihan 6.1Nyatakan 6 langkah yang terdapat dalam pengaturcaraan.

6.3

GENERASI BAHASA PENGATURCARAAN DAN CONTOHNYA

Amnya, bahasa pengaturcaraan boleh dikategorikan kepada 5 generasi. Generasi pertama dikenali sebagai bahasa mesin. Bila komputer mula-mula dicipta, bahasa yang digunakan adalah bahasa mesin yang menggunakan digit penduaan 0 dan 1 untuk mewakili arahan dan data. Atur cara yang ditulis dalam bahasa mesin tidak perlu diterjemah kepada kod objek sebelum dilaksanakan oleh komputer kerana format bahasa mesin adalah menurut senibina komputer. Generasi bahasa komputer boleh dikatakan bermula dari paras rendah ke paras tinggi. Bahasa pengaturcaraan dikatakan peringkat rendah apabila ia menyerupai dengan bahasa yang digunakan sendiri oleh komputer. Bahasa pengaturcaraan peringkat tinggi pula lebih hampir kepada bahasa yang digunakan oleh manusia seperti Bahasa Melayu. Jadual 6.2 menunjukkan generasi bahasa pengaturcaraan.Jadual 6.2: Ringkasan Lima Generasi Pengaturcaraan

GenerasiPertama: Mesin Kedua: Himpunan Ketiga: Bertatacara Keempat: Masalah Kelima: Tabii 10010001

Bahasa Pengaturcaraan

ADD 210(8,13), 02B(4,7) Lebih_masa := 0 FIND Nama = "MAZLAN" JIKA pesakit demam MAKA periksa suhu badan dan tekanan darah

90

OUM

TOPIK 6

BAHASA PENGATURCARAAN

(i)

Generasi pertama bahasa pengaturcaraan adalah bahasa mesin. Dengan bahasa mesin, pengaturcara boleh menulis satu atur cara yang optimal. Tapi, kaedah ini agak sukar kerana pengaturcara perlu mengingati kod binari dan nombor. Oleh itu, bahasa mesin jarang digunakan sekarang. Bahasa mesin juga bergantung kepada jenama komputer dan ini agak menyukarkan penggunaannya. Contoh bahasa mesin yang digunakan untuk mewakilkan suruhan dan data adalah: 01011010 000100000111110011101001

(ii)

Generasi kedua adalah bahasa penghimpun. Penciptaan bahasa penghimpun adalah langkah pertama kepada pembangunan perisian yang lebih mudah dan cekap. Bahasa penghimpun lebih mudah untuk diingati kerana bentuknya lebih ringkas. Ia juga bergantung kepada jenis komputer. Ia menggunakan simbol dan perkataan untuk mewakili arahan serta data dan tidak menggunakan digit pendua seperti bahasa mesin. Contoh atur cara dalam bahasa penghimpun adalah seperti berikut: v86_signal_return: call SYMBOL_NAME(save_v86_state) movl xorl call SYMBOL_NAME(do_signal) jmp restore_all ALIGN Oleh kerana atur cara dalam bahasa penghimpun bukan dalam bahasa mesin yang difahami oleh komputer, ia perlu ditukar dahulu kepada bahasa mesin sebelum ia boleh dilaksanakan oleh komputer. Atur cara penghimpun digunakan untuk menukar atur cara dalam bahasa penghimpun kepada bahasa mesin.

(iii) Generasi ketiga bahasa pengaturcaraan adalah bahasa yang dihasilkan pada 1950an iaitu bahasa paras tinggi. Tetapi ia masih digunakan hingga ke hari ini seperti bahasa C, COBOL dan FORTRAN. Ia banyak menyerupai bahasa tabii manusia. Ini memudahkan pengaturcara untuk menulis atur cara. Bahasa generasi ini juga dikenali sebagai bahasa paras tinggi dan direkabentuk untuk digunakan pada berbagai mesin dengan sedikit perubahan. Dengan bahasa generasi ketiga pengguna tidak perlu lagi menulis banyak arahan bahasa mesin yang rumit. Sebaliknya pengguna hanya perlu menaip satu arahan untuk melakukan sesuatu yang memerlukan banyak arahan dalam bahasa mesin. Antara sebab-sebab penciptaan bahasa paras tinggi adalah untuk: (a) Memudahkan penulisan dalam bahasa mesin dan bahasa penghimpun. (b) Membolehkan atur cara dijalankan pada lebih dari satu mesin. Atur cara hanya perlu dikompil semula untuk dilarikan pada mesin yang berlainan. (c) Membolehkan pengaturcara memberikan tumpuan kepada memenuhi keperluan pengguna.

OUM

91

BAHASA PENGATURCARAAN

TOPIK 6

Contoh bahasa pengaturcaraan yang dihasilkan pada generasi ini adalah Algol 68, FORTRAN, C, ADA, COBOL, Simula, APL, BCPL, BASIC, PL/1, Pascal, Logo, Modula, dan sebagainya. Kebanyakan bahasa paras tinggi adalah bahasa yang berasaskan tatacara atau prosedur. Dengan bahasa berasaskan prosedur, pengaturcara perlu menggunakan logik pengaturcaraan untuk menyelesaikan masalah. Dalam erti kata lain, pengaturcara perlu menulis arahan dalam turutan tertentu yang dilaksanakan untuk menyelesaikan masalah. Atur cara yang ditulis dalam bahasa paras tinggi disebut sebagai kod punca. Ini perlu ditukar kepada bahasa mesin yang disebut juga kod objek untuk membolehkan atur cara tersebut dilaksanakan oleh komputer. Proses penukaran ini dilakukan oleh pemproses bahasa. Terdapat tiga jenis pemproses bahasa iaitu: 1. 2. 3. Penghimpun - menukarkan bahasa penghimpun kepada kod mesin. Pengkompil - menukar bahasa paras tinggi (seperti BASIC, C, Pascal) kepada kod mesin. Penterjemah - menterjemah dan melaksanakan suruhan bahasa paras tinggi satu suruhan demi satu suruhan. Atur cara yang diterjemah adalah lebih perlahan berbanding dengan atur cara yang dikompil.

(iv) Generasi ke empat dikenali sebagai bahasa berorientasikan masalah. Bahasa generasi ini, dikenali juga sebagai 4GL, memerlukan lebih sedikit suruhan dari bahasa generasi ketiga dalam melaksanakan satu-satu tugasan. Takrifan 4GL adalah berbeza mengikut vendor. Selalunya bahasa ini digabungkan dengan pakej perisian seperti perisian pengurusan pangkalan data (DBMS). Lazimnya, 4GL digunakan untuk mencapai maklumat dari fail dan pangkalan data. Arahan dalam 4GL menyerupai arahan dalam Bahasa Inggeris untuk mencapai dan memformat data. Bahasa generasi ini mudah digunakan. Ini membolehkan pengguna profesional dan bukan profesional membangunkan perisian aplikasi dengan mudah. Setengah pihak menganggap ia bukan bahasa berorientasikan tatacara kerana ia lebih menekankan kepada apa yang patut dilakukan dan bukan kepada bagaimana patut dilakukan (tatacara). 4GL tidak akan menggantikan bahasa generasi ketiga kerana ia lebih memfokus kepada satu tugas. Kebanyakan dari prosedur 4GL dijana secara automatik oleh komputer dan pengguna hanya perlu menyatakan apa yang perlu dibuat dan bukan bagaimana hendak melakukannya. Beberapa contoh bahasa generasi keempat adalah: (a) Bahasa pertanyaan seperti SQL, QBE dan Intellect. Bahasa ini digunakan untuk mengubah, mengedit, mencipta dan mencapai maklumat dari pangkalan data. (b) Penjana laporan adalah bahasa yang digunakan untuk menjana pertanyaan dan laporan dari pangkalan data.

92

OUM

TOPIK 6

BAHASA PENGATURCARAAN

(c) Penjana aplikasi melakukan lebih daripada bahasa pertanyaan dan penjana laporan. Ia merupakan satu alat yang menjanakan perisian mengikut kehendak pengguna tentang keperluan data yang perlu diproses dan dilaporkan. (v) Generasi kelima bahasa pengaturcaraan adalah bahasa tabii iaitu bahasa yang hampir sama kepada bahasa pertanyaan kecuali pengguna tidak perlu mempelajari kamus, nahu dan sintaks tertentu. Ia menggunakan bahasa tabii seperti Bahasa Inggeris. Penggunaan bahasa tabii ini menyentuh tentang satu bidang kajian kecerdasan buatan, iaitu satu bidang yang mengkaji bagaimana cara hendak menjadikan komputer yang boleh berfikir seperti manusia.

Latihan 6.21. 2. Apakah yang membezakan bahasa pengaturcaraan peringkat rendah dan peringkat tinggi? Berikan dua faedah yang boleh didapati sekiranya anda memahami bahasa pengaturcaraan.

6.4 PENDEKATAN: PENGKELASAN BAHASA PENGATURCARAAN6.4.1 Ciri-ciri

Bahasa pengaturcaraan boleh dikelaskan berdasarkan ciri-ciri bahasa tersebut seperti imperatif, berorientasikan objek, fungsi, logik, selari, berselerak dan skrip dan visual seperti yang ditunjukkan dalam Rajah 6.2. Setiap ciri-ciri ini mempunyai kebaikan dan kelemahan. Bahagian seterusnya membincangkan kebaikan dan kekurangan setiap ciriciri di atas.

Rajah 6.2: Ciri-ciri bahasa pengaturcaraan

6.4.2

Bahasa ImperatifMaksud imperatif adalah arahan, suruhan atau perintah.

Dengan itu, bahasa imperatif merupakan bahasa di mana setiap arahan untuk menyelesaikan masalah perlu dinyatakan dengan jelas. Setiap arahan untuk menyelesaikan masalah akan dilaksanakan langkah demi langkah. Bahasa imperatif boleh diibaratkan seperti satu resepi masakan. Dalam bahasa ini, kaedah yang

OUM

93

BAHASA PENGATURCARAAN

TOPIK 6

digunakan adalah buat A, kemudian buat B. Contoh-contoh bahasa imperatif adalah seperti yang ditujukkan di dalam Jadual 6.3. Ada masanya, ia juga dikenali sebagai bahasa prosedur. Idea asas dalam bahasa imperatif adalah, pengguna perlu menyatakan setiap langkah yang diperlukan dalam menyelesaikan masalah.Jadual 6.3: Contoh-contoh Bahasa ImperatifBahasa ImperatifC Ada C++ Pascal Modula 2 FORTRAN COBOL Algol 68 PL/1 Simula Turing Oberon BASIC

Sebagai contoh, kita diminta mencetak semua nombor ganjil antara 1 dan 40, maka kod dalam bahasa imperatif adalah seperti berikut:for(i=1;i