BAB 4
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
BERSTRUKTUR DAN ORIENT ORIENTASI ASI OBJEK
PENGENALAN Setelah anda mempelajari tentang konsep pengaturcaraan, satu persoalan besar yang bermain di fikiran kita adalah bagaimana kita boleh menggunakan pengaturcaraan untuk menyelesaikan menyelesaika n sesuatu masalah. Perkara paling utama adalah kita mesti tahu memilih jenis-jenis pengaturcaraan yang sesuai dengan penyelesaian masalah yang dirancangkan. Kriteria pemilihan jenis pengaturcaraan yang sesuai ini bergantung kepada jenis penyelesaian penyelesaia n yang dipilih, bagaimanakah input dimasukkan oleh pengguna, proses yang terlibat dan juga bagaimanakah output yang terhasil akan dipaparkan kepada pengguna. Oleh itu kita perlu mengetahui jenis pengaturcaraan supaya penyelesaian perancangan masalah itu sesuai dengan jenis pengaturcaraan yang dipilih.
OBJEKTIF Di akhir bab ini anda seharusnya dapat: 1.
membezaka memb ezakan n penga pengaturca turcaraan raan bers berstruktu trukturr dan dan beror berorienta ientasikan sikan objek objek;; dan dan
2.
menjelaskan kompo menjelaskan komponen-ko nen-kompone mponen n asas dalam penga pengaturcara turcaraan an berori berorientasi entasikan kan objek.
4.1 4. 1
PENG PE NGA ATU TURC RCAR ARAA AAN N BE BERS RSTR TRUK UKTU TUR R
Berdasarkan objektif bab ini anda akan diperkenalkan dengan dua jenis konsep pengaturcaraan iaitu pengaturcaraan berstruktur dan pengaturcaraan berorientasikan objek. Pengaturcaraan berstruktur adalah antara yang paling kerap diperkenalkan sebagai asas pengaturcaraan kepada pelajar-pelajar yang ingin mengenali dunia pengaturcaraan. Pengaturcaraan berstruktur bermaksud anda akan membina sebuah atur cara yang kebiasaannya kebiasaanny a akan dilaksanakan mengikut turutan arahan-arahan yang ditulis. Biasanya perancangan penyelesaian pengaturcaraan adalah berdasarkan kepada penghuraian beralkhwarizmi.
4.1.1 4.1 .1
Konsep Kon sep Asa Asas s Peng Pengatu aturca rcaraa raan n Bers Berstru truktu ktur r
Dalam pengaturcaraan berstruktur, bentuk atur caranya adalah berjujukan. Ini bermaksud, arahan-arahan dalam atur cara diproses satu persatu. Apabila arahan pertama selesai, arahan kedua dicapai dan seterusnya hingga arahan yang terakhir.
22
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
Lihat Rajah 4.1 bagi membantu kefahaman anda.
Rajah 4.1: Konsep ringkas pengaturcaraan berstruktur
Penyelesaian masalah besar dan kompleks dalam pengaturcaraan berstruktur memerlukan pemecahan tugas-tugas kepada sub-sub atur cara. Proses memecahkan tugas-tugas kepada subaturcara yang lebih kecil adalah berkonsepkan “pecah dan perintah”. Sebagai contohnya, jika ada 2 nombor perlu melakukan proses penambahan, penolakan, pembahagian dan pendaraban, juruaturcara perlu memecahkan atur cara utama kepada beberapa bahagian kecil. Proses penambahan ada subaturcaranya sendiri, begitu juga dengan penolakan, pembahagian dan pendaraban. Jadi tugas atur cara utama dapat dibahagikan kepada subaturcara yang lebih kecil. Penyelenggaraannya akan menjadi lebih mudah dan berkesan. Selain dikawal secara berjujukan dan bermodul berasaskan fungsian tertentu, ia juga boleh dikawal dalam struktur pilihan dan ulangan mengikut keperluan permasalahan. Fikirkan apakah arahan-arahan yang sesuai untuk menambahkan 10 nombor integer yang diinputkan melalui papan kekunci dan kemudiannya memaparkan hasil penambahan itu di monitor.
OUM
23
4.1.2
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
Keperluan Pengaturcaraan Berstruktur
Pengaturcaraan berstruktur memerlukan sekurang-kurangnya persekitaran pembangunan atur cara, bahasa dan perpustakaannya: 1.
Persekitaran pembangunan atur cara ® ® adalah adalah tentang kaedah untuk menuliskan dan melaksanakan suatu atur cara berstruktur.
2.
Bahasa ® merupakan Bahasa ® merupakan peraturan mengenai sintaks atau perwakilan alkhwarizmi yang sesuai.
3.
Perpustakaan ® adalah fungsi-fungsi bantuan yang harus disediakan untuk membolehkan suatu atur cara berstruktur dilaksanakan pada komputer.
4.1.3 4.1 .3
Contoh Con toh Atu Aturr Cara Cara Penga Pengatur turcar caraan aan Ber Berstr strukt uktur ur
Rajah 4.2 adalah contoh atur cara dalam bahasa pengaturcaraan C, Permasalahan atur cara ini dirujuk dalam Bab 3 modul ini (subtopik 3.1).
Bahasa C merupakan contoh bahasa pengaturcaraan berstruktur. Bolehkah anda cadangkan bahasa pengaturcaraan lain dengan konsep pengaturcaraan yang sama.
24
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
Atur cara Utama
Output
Rajah 4.2: Contoh atur cara pengaturcaraan berstruktur untuk C
OUM
25
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
Berikut adalah penerangan penerangan atur cara utama dalam Rajah 4.2. 4.2. Jadual 4.1: Penerangan Pada Rajah 4.2
Baris
Penerangan
1
menunjukkan panggilan kepada fail kepala.
2-7 27
pengisytiharan pemboleh ubah yang akan digunakan.
8,9
memberitahu pengguna untuk memasukkan bilangan pelajar . Jadi nilai bilangan
pelajar inilah yanga akan menagawal gelung supaya boleh
berhenti. 11,12
meminta pengguna menginputkan markah bagi setiap pelajar.
13
menjumlahkan jumlah markah bagi pelajar.
11-13
proses ulangan sehingga semua markah pelajar telah di inputkan.
15
mencari purata bagi semua markah pelajar.
16
memaparkan hasil kepada pengguna di monitor.
Pertimbangkan atur cara dalam bahasa C di atas. Tuliskan pseudo kod yang sesuai bagi atur cara di at as. Lukiskan juga carta alirnya. Kemudian, kategorikan arahan-arahan yang melibatkan input, proses dan output bagi atur cara tersebut.
4.1.4
Kepentingan Pengaturcaraan Berstruktur
Setelah anda melihat contoh atur cara pada Rajah 4.2 tentu anda bertanya apakah kepentingan konsep atur cara berstruktur ? Antara kepentingan atur cara berstruktur ialah: (i)
Asas Asa s kepada kepada pemb pembela elajar jaran an jenis jenis peng pengatu aturca rcaraa raan n yang yang lain. lain.
(ii)) (ii
Sangat berkesan Sangat berkesan untuk untuk pendedah pendedahan an kepada kepada pelajar pelajar yang yang pertama pertama kali mempe mempelaja lajari ri pengaturcaraan.
(iii) (ii i) Mudah Mudah untuk diimpleme diimplementasi ntasikan kan kepada kepada masalah masalah pengaturca pengaturcaraan raan yang yang mudah dan ringkas. (iv) (i v) Konsep pengaturcaraan berstruktur boleh diaplikasi kepada masalah-masala masalah-masalah h pengaturcaraan yang besar dan komplek, tetapi melibatkan proses perancangan dan pengimplementasian pengimplementasi an yang kritikal dan teliti. Anda mungkin telah menjejaki atur cara pada Rajah 4.2. Adalah dicadangkan supaya anda berehat sebentar sebelum meneruskan topik seterusnya.
26
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
Sebelum anda berehat, lawat laman web http://www.robelle.com/ smugbook/structpv.html. Laman ini memberi huraian berhubung dengan pengaturcaraan berstruktur. Cuba anda ringkaskan maklumat yang diberikan sebagai nota tambahan.
4.2 4. 2
PENG PE NGA ATU TURC RCAR ARAAN AAN BE BERO RORI RIEN ENT TAS ASIK IKAN AN OBJ OBJEK EK
Anda baru sahaja diperkenalkan dengan konsep pengaturcaraaan berstruktur. Cuba anda kosongkan minda sekejap dan bersedia dengan konsep berorientasikan objek. Konsepnya agak agak berbeza dengan dengan konsep pengaturcaraan pengaturcaraan berstruktur. berstruktur. Mari kita teruskan dengan konsep asas pengaturcaraan berorientasikan berorientasikan objek.
4.2 .2.1 .1
K o ns e p A sa s
Pengaturcaraan berorientasikan objek adalah sejenis teknik pengaturcaraan yang sangat berguna. Dalam orientasi objek, setiap objek yang telah dibina akan diguna semula oleh atur cara yang lain. Objek akan digunakan untuk menerima sebarang mesej yang akhirnya dapat menghasilkan penyelesaian yang dikehendaki. Pendekatan penyelesaian masalahnya juga berbeza di mana orientasi objek memerlukan penghuraian berorientasikan objek. Anda mempunyai sebuah televisyen. Bincangkan yang berikut: 1. Se Sena nara raik ikan an sifat sifat-s -sif ifat atny nya. a. 2. Lan Langkah gkah-lan -langka gkah h untu untuk k men menggu ggunaka nakanny nnya. a. 3. Hubu Hubungka ngkan n komponen komponen-kom -kompon ponen en yang wujud wujud dalam dalam televis televisyen yen tersebut. Bagaimanakah setiap komponen tersebut saling berhubungan?
4.2.2
Penghuraian Berorientasik Berorientasikan an Objek
Pada Bab 3 yang lalu anda telah diberikan penjelasan dengan penghuraian alkhwarizmi. alkhwarizmi. Oleh kerana konsep orientasi objek agak berbeza maka lahirlah satu bentuk penghuraian yang lain yang dinamakan penghuraian berorientasikan objek. Penghuraian berorientasikan objek adalah sangat berbeza berbanding dengan penghuraian alkhwarizmi. Objek boleh dilihat sebagai satu ‘agen’ yang menyediakan beberapa perkhidmatan dengan cara menghantar mesej yang bersesuaian kepadanya. Untuk memberi gambaran ringkas mengenai penghuraian berorientasikan objek pertimbangkan masalah berikut:
OUM
27
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
Rajah 4.3: Penghuraian berorientasikan objek
Dalam Rajah 4.3 di atas, objek pengurus segiempat akan mengawal semua operasi atur cara. Apabila satu mesej “Ubah nilai sisi segiempat” diterima, objek pengurus akan tahu apakah tindakan seterusnya. Ia perlu memberitahu objek fail segiempat supaya dibuka. Seterusnya pengurus memberitahu objek kira luas segiempat untuk ubah nilai sisi-sisi segiempat dan kemudiannya mengira luas segiempat tersebut. Akhirnya objek pengurus segiempat akan memberitahu objek fail segiempat supaya mengemaskini maklumat terkini yang telah diubah. Rujuk buku Modul Pengaturcaraan Objek atau buku-buku yang terdapat dalam senarai rujukan di akhir modul ini.
4.2.3
Komponen Asas dalam Orienta Orientasi si Objek
Dalam orientasikan objek terdapat 3 komponen asas yang anda perlu tahu iaitu: (a)
objek
(b) per perkai kaitan tan kead keadaan aan dan per perlak lakuan uan obj objek ek (c)) (c
28
anta an tara ra muk uka a obj objek ek
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
Teruskan pembacaan anda dengan deng an tenang dan teliti. (a)
Objek
Objek merupakan unsur paling penting dalam pengaturcaraan berorientasikan objek. Ia memainkan peranan yang utama dalam perlaksanaan perisian berorientasikan objek. Malah, setiap perlakuan perisian berorientasikan objek merupakan hasil kerjasama objek-objek dalam perisian yang berinteraksi sesama mereka dalam mewujudkan perlakuan tersebut. Sehingga kini tahukah anda apakah objek sebenarnya?
Objek adalah benda yang mempunyai keadaan, perlakuan dan identiti.
Cuba anda lihat Rajah 4.4 di bawah.
20
20
Rajah 4.4: Keadaan sesuatu objek
Atribut biasanya digunakan untuk menunjukkan keadaan sesuatu objek. Dalam Rajah 4.4 di atas, keadaan objek itu adalah mempunyai lebar 20, tinggi 20 dan keadaan objek itu pada ketika itu berwarna hitam. Lihat rajah berikutnya iaitu Rajah 4.5.
lukis(30,30)
Rajah 4.5: Perlakuan sesuatu objek
OUM
29
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
Terdapat satu operasi/mesej yang diberikan pada objek ini. Operasi/Mesej adalah unt uk melukis suatu bulatan dengan tinggi = 20, lebar = 20 berwarna hitam pada koordinat (30,30). Ini menunjukkan perlakuan sesuatu objek. Dalam Rajah 4.5 di atas, keadaan objek itu telah diubah dengan memberi mesej supaya objek itu boleh dilukis pada suatu koordinat (30,30).
Rajah 4.6: Identiti sesuatu objek
Setiap objek mempunyai identiti yang berbeza. Identiti objek sangat penting kerana tidak pernah ada identiti objek yang sama. Contoh perbezaan identiti dan keadaan adalah setiap manusia mempunyai identitinya berbeza dari segi nombor kad pengenalan, nombor kad ATM dan sebagainya. Keadaan manusia manusia adalah sama, mempunyai mempunyai mata, hidung, kaki, warna kulit dan sebagainya. Begitu juga dengan identiti kedua-dua bulatan dalam Rajah 4.6. Ia menunjukkan perbezaan antara objek-objek tersebut. Bulatan A mempunyai identiti tinggi 20, lebar 20, warna hitam, berada di koordinat (30,30). Manakala bulatan B mempunyai identiti tinggi 40, lebar 40, warna kelabu, berada di koordinat (60,70). Keadaan bagi kedua-dua objek dalam Rajah 4.6 di atas adalah bergantung kepada atribut dan nilai semasa bagi objek tersebut.
(b)
Perkaitan keadaan objek dengan perlakuan objek
Komponen kedua yang anda perlu lihat dalam pengaturcaraan berorientasikan objek keadaan dan perlakuan objek. Keadaan objek dan perlakuan objek mempunyai kaitan yang sangat rapat. Keadaan semasa suatu objek mewakilkan kesan kumulatif perlakuan objek itu. Keadaan objek mempengaruhi perlakuannya.
30
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
(c)
Antara muka objek
Komponen yang terakhir adalah antara muka objek. Objek menerima mesej daripada pelanggan yang mengharapkan suatu reaksi daripadanya. Senarai mesej yang disekutukan dengan suatu objek disebut sebagai antara muka bagi objek itu. Dalam orientasi objek, antara muka bagi suatu objek menentukan bagaimana untuk berinteraksi dengan objek itu.
Rajah 4.7: Konsep antara muka objek
Penghantaran mesej merupakan mekanisma yang lazim digunakan apabila satu objek ingin berkomunikasi dengan satu objek yang lain. Objek yang menerima mesej pula akan bereaksi dengan melaksanakan sesuatu yang bersesuaian dengan mesej yang diterima. Objek yang hanya bersendirian tidak ada gunanya dalam orientasi objek.
4.2.4
Kelas
Objek yang terlibat mungkin mungkin terlalu banyak untuk dispesifikasikan satu persatu. Oleh itu konsep kelas boleh digunakan untuk menangani masalah ini. Konsep kelas boleh dibahagikan kepada dua bahagian: (i)
Senarai atribut yang dipunyai oleh setiap objek daripada kelas itu.
(ii)
Senarai perlakuan bagi setiap objek daripada kelas itu, iaitu bagaimana setiap objek tersebut bereaksi terhadap setiap mesej yang difahaminya.
OUM
31
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
Rajah 4.8: Kelas
Terdapat beberapa istilah yang patut anda tahu dalam konsep pengaturcaraan objek. Sila ke laman web http://java.sun.com/docs/books/ tutorial/java/concepts/ dan latihan. Cetak atau tandakan ( Bookmark ) pada laman ini untuk contoh dan latihan. Sebelum meneruskan pembacaan dalam bab ini, ada baiknya anda mencuba beberapa soalan latihan untuk mengukuhkan lagi kefahaman anda.
Latihan 4.1 1. Tulisk Tuliskan an perbezaa perbezaan n dan persamaan persamaan pengat pengaturca urcaraan raan berori berorienta entasika sikan n objek dan pengaturcaraan berstruktur. 2. Luki Lukiskan skan gam gambara baran n bagi bagi suatu suatu obje objek k buah buah durian durian.. (a) Tuliskan Tuliskan keadaan keadaan,, identiti identiti dan perlaku perlakuan an buah buah durian. (b) Apa Apakah kah kaita kaitan n yang bole boleh h digamb digambark arkan an antara antara duri durian an yang yang sudah masak dengan putik durian.
4.2.5
Contoh Atur Cara
Di dalam contoh ini, wujud dua atur cara iaitu Atur cara 1 dan Atur cara 2. Kedua-dua atur cara ini sangat memerlukan antara satu sama lain. Kedua-duanya menggunakan bahasa Java.
32
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
Atur cara 1
Atur cara 2
Setelah kedua-dua atur cara ini dikompil. Atur cara 1 adalah merupakan atur cara yang asas yang menyediakan objek-objek tertentu. Hasil yang akan dipaparkan di monitor adalah seperti berikut: Output:
OUM
MyDate : 22-2-1971 MyDate : 29-2-1971
33
PARA PA RADI DIGM GMA A PEN PENGA GATU TURC RCAR ARAA AAN N
UNIT UNI T1
BERSTRUKTUR DAN ORIENTASI OBJEK
BAB 4
Penerangan:
4.2.6
Atur cara 1 merupakan atur cara yang menyediakan objek-objek yang tertentu. Objek-objek ini menyediakan antara muka, operasi yang akan dilakukan dan juga kelakuannya. Manakala Atur cara 2 pula merupakan objek pengurus bagi kesemua objek yang wujud di dalam Atur cara 1. Pewarisan telah dilakukan oleh atur cara 2 ke atas objek-objek yang wujud dalam atur cara 1. Objek-objek dalam Atur cara 1 telah diwarisi oleh Atur cara 2 dengan mengubahkan objek-objek itu mengikut kesesuai dan menghantar operasi yang akan dilakukan oleh Atur cara 1. Ia jelas menunjukkan pengkapsulan objek-objek telah dilakukan dengan Atur cara 2 hanya menggunakan antara muka yang disediakan dengan melakukan operasi yang telah disediakan oleh objek dalam Atur cara 1.
Kepentingan Orientasi Objek
Dalam konsep pengaturcaraan orientasi objek, terdapat sekurang-kurangnya 3 kepentingan utama yang anda perlu tahu iaitu: 1.
Boleh menggun Boleh mengguna a pakai pakai semula semula obje objek-obj k-objek ek dan dan kelas-ke kelas-kelas las yang yang dibin dibina a tanpa tanpa perlu perlu membinanya sekali lagi.
2.
Perisian Peris ian beror berorienta ientasikan sikan objek lebi lebih h mudah mudah untuk diken dikendali dalikan kan dan diub diubah ah suai. suai.
3.
Kaedah polimor Kaedah polimorfosi fosis s (tidak (tidak dibincan dibincangkan gkan dalam dalam bab bab ini) ini) yang dised disediaka iakan n di dalam dalam orienta orientasi si objek lebih baik iaitu melakukan dua proses dalam satu masa.
Fikirkan tentang objek yang wujud di sekitar rumah anda. Katakan anda memilih ketuhar gelombang mikro. Bagaimanakah anda boleh menerangkan ketuhar gelombang mikro tersebut boleh berfungsi. Gunakan ayat anda sendiri untuk menerangkan dari segi orientasi objek untuk ketuhar gelombang mikro tersebut.
34
OUM
UNIT UNI T1
PAR ARAD ADIG IGMA MA PE PENG NGA ATU TURC RCAR ARAA AAN N
BAB 4
BERSTRUKTUR DAN ORIENTASI OBJEK
RUMUSAN Pengaturcaraan struktur dan orientasikan objek adalah dua konsep yang berbeza. Anda perlu teliti dalam pembacaan bagi kedua-dua konsep ini. Selain itu, perbanyakkan bahan bacaan sampingan yang berkaitan dengan topik ini terutamanya topik pengaturcaraan objek.
OUM
35