Presentation is loading. Please wait.

Presentation is loading. Please wait.

F3031 : OBJECT ORIENTED PROGRAMMING

Similar presentations


Presentation on theme: "F3031 : OBJECT ORIENTED PROGRAMMING"— Presentation transcript:

1 F3031 : OBJECT ORIENTED PROGRAMMING
Pengenalan Kepada Orientasi Objek Prepared by : Suzila Yusof

2 PENGATURCARAAN BERSTRUKTUR
Aturcara dipecah-pecahkan kepada modul-modul atau prosedur Setiap modul mempunyai data dan fungsinya sendiri yang boleh dicapai oleh fungsi lain Rajah 1.1 menggambarkan bentuk pengaturcaraan berstruktur di mana ac dipecahkan kpd fungsi-fungsi Setiap fungsi mempunyai datanya sendiri disamping berkongsi data global. Fungsi-fungsi yg menggunakan data global ini boleh mengubah data tersebut tanpa sebarang kekangan Bagi ac yg besar, adalah agak sukar utk mengenal pasti fungsi-fungsi yg mencapai data global. Ini mengakibatkan seandainya sesuatu struktur data global perlu diubahsuai, fungsi-fungsi yang menggunakannya perlu juga dikaji samada perlu diubahsuai akibat dari perubahan ke atas data tersebut. Masalah ini blh mengakibatkan berlakunya ralat dlm ac dan proses penyenggaraan agak sukar dilakukan. Oleh itu, pengaturcaraan berstruktur terbukti gagal dalam penyelesaian masalah dalam krisis perisian.

3 PENGATURCARAAN BERSTRUKTUR
MAIN PROGRAM FUNCTION 3 FUNCTION 2 GLOBAL DATA FUNCTION 5 FUNCTION 4 FUNCTION 1 Rajah 1.1

4 PERMASALAHAN DALAM PEMBANGUNAN PERISIAN BERSTRUKTUR
Krisis yg biasa berlaku dalam pembangunan perisian menggunakan pengaturcaraan berstruktur adalah : Projek tidak dpt disiapkan pd tarikh yg ditetapkan Pembangunan projek melebihi anggaran kos Perisian yg dihasilkan tidak menepati kehendak pengguna dan ini menjadikan perisian tersebut tidak dpt digunakan oleh pengguna Proses penyenggaraan perisian agak sukar. Akibatnya jangka hayat sistem adalah pendek Keperluan pengguna yang sentiasa berubah-ubah menjadikan pembangunan ac agak sukar Teknik pembangunan perisian yang digunakan tidak menggambarkan operasi dunia sebenar. Pengaturcaraan berorientasikan objek seterusnya dihasilkan bagi mengatasi masalah yg tlh disebutkan di atas. Teknik pengaturcaraan ini mula digunakan dengan meluasnya pada tahun 1990an.

5 PENGATURCARAAN BERORIENTASIKAN OBJEK
Satu organisasi perisian yang terdiri dr sekumpulan objek yang bekerjasama di antara satu sama lain. Setiap objek merupakan instant kpd sesuatu kelas dan kelas-kelas pula merupakan ahli kpd satu hirarki dlm hub pewarisan. Cara pengaturcaraan terbaru yg cuba meniru keadaan dunia sebenar dengan menggunakan objek-objek. Ia masih menggunakan konsep ac berstruktur yang digabungkan dengan bentuk pengaturcaraan baru. Rajah 1.2 menggambarkan organisasi data dan fungsi di dlm pengaturcaraan berorientasikan objek. Setiap objek mempunyai data dan fungsinya sendiri dan objek-objek berkomunikasi di antara satu sama lain dengan menghantar mesej.

6 PENGATURCARAAN BERORIENTASIKAN OBJEK
Object 1 Object 2 Data Function Object 3 Rajah 1.2 : Objek-objek dalam pengaturcaraan OO

7 PENGATURCARAAN BERORIENTASIKAN OBJEK
Pelanggan Nama NoAkaun Baki Akaun JenisAkaun JenisTransaksi bukaAkaun( ) urusAkaun( ) kemaskiniMaklumat( ) PekerjaBank Nama Jawatan Gaji Tugas Rajah 1.3 Rajah kelas yang menggambarkan hubungan di anatara Pelanggan, Akaun dan PekerjaBank

8 PENGATURCARAAN BERORIENTASIKAN OBJEK
Rajah 1.3 merupakan satu rajah kelas yg terdiri dr objek Pelanggan, Akaun dan PekerjaBank. Setiap objek mempunyai data dan kelakuannya sendiri Objek2 berkomunikasi dgn menghantar mesej Contoh : - pelanggan menghantar mesej bukaAkaun() kpd Akaun dan ini mengakibatkan objek Akaun bertindakbalas terhadap mesej tersebut dgn menghasilkan akaun bg Pelanggan tersebut.

9 PENGATURCARAAN BERORIENTASIKAN OBJEK
Kelebihan OOP : Fasa analisa & rekabentuk sistem lbh mudah krn corak pengaturcaraan cuba meniru keadaan dunia sebenar dgn menggunakan objek sbg fokus utamanya. Membenarkan kod digunakan semula Penyenggaraan sistem lbh mudah, kerana pengubahsuaian hanya mengambil kira objek-objek yg terlibat shj Mengurangkan pembinaan kod yg berulang krn kod yang tlh dihasilkan blh diguna semula Aturcara yg dihasilkan lbh selamat.

10 PERBEZAAN ANTARA PENGATURCARAAN BERSTRUKTUR Dan OOP
Penekanan ialah kepada data daripada prosedur Data dan fungsi-fungsi dikumpulkan dalam kelas Reka bentuk keseluruhan sistem mudah difahami oleh orang lain (walaupun tidak mempunyai latar belakang pada komputer sains) Menggunakan pendekatan dari bawah ke atas dalam reka bentuk atur cara Penekanan ialah pada fungsi(algoritma) Data dan fungsi-fungsi adalah disimpan berasingan. Reka bentuk tidak kemas, sukar untuk faham dan sukar untuk dilaksanakan. Menggunakan pendekatan dari atas ke bawah.

11 KONSEP-KONSEP ORIENTASI OBJEK
Konsep-konsep penting OO terdiri drp : Kelas (Class) Objek (Object) Pengabstrakan Data (Data Abstraction) Pengkapsulan Data (Encapsulation) Polimorfisma ( Polymorphism) Pewarisan (Inheritance)

12 KELAS: KONSEP-KONSEP ORIENTASI OBJEK
Objek yg mempunyai struktur data & kelakuan yg sama dikumpulkan dalam satu kelas. Kelas tidak mempunyai nilai bg data/attribut Setiap objek merupakan instant kpd kelasnya Contoh kelas : kenderaan, perenggan, syarikat , masa, haiwan Drpd kelas terhasillah objek atau instant Instant : objek unik yg mempunyai nilai data/atributnya yg tersendiri ttp berkongsi nama attribut dan operasi dengan instant dr kelas yg sama. Contoh instant : - Kereta Honda Civic, WNF3318 - Perenggan pertama dalam dokumen cuba.doc - Buku Pengaturcaraan OO : Pendekatan C++

13 OBJEK: KONSEP-KONSEP ORIENTASI OBJEK
Mempunyai pengenalan, kelakuan dan attribut. Boleh berupa konkrit atau konsep Jadual 1.1 menyenaraikan contoh objek konkrit dan objek konsep Identiti – Ciri sesuatu objek yg membezakannya dr objek lain Objek Konsep Objek Konkrit Polisi Undang-undang Masa Jadual kuliah Kerusi Bola Pekerja di sebuah syarikat Imej dalam dokumen

14 OBJEK: KONSEP-KONSEP ORIENTASI : OBJEK samb…
Attribute – merupakan data atau maklumat yg dipunyai oleh sesuatu objek. Data yg dipunyai oleh sesuatu objek membezakannya dengan objek lain. Attribute sesuatu objek bertukar apabila datanya bertukar. Contoh attribute sesuatu objek : - panjang perenggan : 20 perkataan - Tahap kemahiran pekerja : sederhana - tarikh perlaksanaan polisi : 20hb Jun 2010 Method – merujuk kpd bagaimana sesuatu objek bertindak dan bertindakbalas terhadap perubahan sesuatu keadaan ataupun terhadap penerimaan mesej dr objek lain. Dikenali juga sebagai fungsi. Contoh method bagi kelas perenggan : Pamer perenggan, taip perenggan, kemaskini perenggan Contoh method bagi kelas polisi : ubah polisi, analisa polisi, laksana polisi

15 OBJEK: KONSEP-KONSEP ORIENTASI : PENGABSTRAKAN DATA samb…
Konsep di mana ianya memfokus kpd aspek penting dan mustahak kpd satu entiti manakala aspek yg tidak penting dan tidak berkaitan diabaikan Pengguna hanya perlu tahu ciri-ciri yang dipunyai oleh sesuatu kelas dan methodnya tanpa perlu mengetahui bagaimana method tersebut dilaksanakan. Rajah 1.4 menggambarkan perlaksanaan konsep pengabstrakan data Pelajar Nama NoPend HPNM Kursus Belajar( ) LayarInternet( ) HadirKuliah( ) Pelajar Abstrak kepada Rajah 1.4 : Pengabstrakan data bagi Pelajar

16 OBJEK: KONSEP-KONSEP ORIENTASI : PENGKAPSULAN DATA
Dikenali sbg penyembunyian maklumat Satu konsep di mana data dan fungsi dikumpul dalam satu unit Dengan pengumpulan data dan fungsi dalam satu unit, data tdk boleh dicapai oleh objek luaran yg lain Data tersebut hanya blh dicapai oleh fungsi yg terkandung dlm objek tersebut Konsep ini memastikan bahwa data tidak blh diubah oleh objek lain dgn sewenang-wenangnya

17 OBJEK: KONSEP-KONSEP ORIENTASI : PERWARISAN
Merupakan kebolehan sesuatu objek mewarisi ciri-ciri superclassnya berdasarkan kpd satu hubungkait hirarki Dlm perwarisan, kelas pd awalnya didefinisikan secara kasar atau secara umum dan ciri-ciri yg lbh spesifik bg sesuatu kelas kemudiannya diperincikan bg membentuk subclass. Superclass mewariskan ciri-cirinya kpd subclass manakala subkelas mewarisi semua ciri-ciri superclassnya disamping mempunyai ciri-ciri uniknya yang tersendiri. Rajah 1.5 menggambarkan konsep pewarisan di mana kelas kenderaan mempunyai atribut dan kelakuannya sendiri. Subclassnya pula mewarisi semua ciri pada kenderaan disamping mempunyai cirinya yg tersendiri. Penggunaan semula kod yg menjadi kekuatan teknik orientasi objek boleh dilaksanakan melalui konsep perwarisan.

18 OBJEK: KONSEP-KONSEP ORIENTASI : POLIMORFISMA
Objek yg berlainan jenis boleh memberi tindakbalas yg berbeza terhadap operasi yg sama. Konsep ini blh dilaksana melalui method limpahan (overloading method) atau overridding method Overloading Method - merupakan metod dlm kelas yg sama yg mempunyai nama yg sama ttp dibezakan dr segi jenis pulangan, bil parameter dan jenis parameter - Contoh : operasi umpukData ke atas seorang pelajar boleh dilaksana dgn beberapa cara berbeza sebagaimana berikut: umpukData(string nama); umpukData(string nama, int kredit, float cpa); umpukData(string noID, char Gred);

19 OBJEK: KONSEP-KONSEP ORIENTASI : POLIMORFISMA
Overridding method objek-objek dr kelas yg berbeza ttp mempunyai method yg sama dan bertindakbalas dgn cara berlainan. Walaubagaimanapun objek-objek ini mestilah mempunyai hubungan dlm satu hirarki perwarisan Contoh : - Operasi Bergerak : bagi objek kenderaan, kereta bergerak adalah adalah berbeza dgn cara keretapi bergerak - Operasi Terbang : bagi objek yg boleh terbang, jet terbang adalah berbeza dgn cara kapalterbang terbang Bagi polimorfisma, setiap objek beroperasi dgn caranya yg tersendiri. Rajah 1.6 menunjukkan bagaimana polimorfisma dilaksanakan ke atas ops dipandu( ) pd kelas kenderaan. Subkelas kpd kenderaan iaitu kereta, kapalterbang dan keretapi setiap satunya mempunyai operasi dipandu( ) ttp bagaimana setiap kenderaan tersebut dipandu adalah berbeza di antara satu kelas dgn kelas lain.

20 OBJEK: KONSEP-KONSEP ORIENTASI : PERWARISAN samb…
Kenderaan Model TahunKeluaran BilPenumpang Dipandu( ) Superclass subclass Kapalterbang Ketinggian Dipandu( ) Terbang( ) Kereta AdaStereng Dipandu( ) Keretapi BilGerabak Dipandu( ) Rajah 1.6: Pewarisan dan perlaksanaan polimorfisma ke atas operasi dipandu

21 OBJEK: KONSEP-KONSEP ORIENTASI : AGGREGATION
Atribut bg sesuatu objek x semestinya terdiri dr data primitif shj ttp blh berjenis objek. Ini berlaku kerana adakalanya komponen sesuatu objek terdiri dr objek lain Konsep ini dikenali svg aggregation Contoh : Komputer – terdiri drp pemproses, RAM, monitor, papankekunci dan tetikus Syarikat - terdiri drp pelbagai jawatan Rajah 1.7 menggambarkan konsep aggregation di mana, syarikat komputer yang terdiri dari jabatan pengurusan, jabatan penyelidikan dan jabatan kewangan.

22 OBJEK: KONSEP-KONSEP ORIENTASI : AGGREGATION
Syarikata Komputer Jabatan Pengurusan Jabatan Penyelidikan Jabatan Kewangan

23 Bahasa Berorientasikan Objek
Bahasa objek terbahagi kpd 2 : bahasa berasaskan objek dan bahasa berorientasikan objek Bahasa berasaskan objek merupakan bahasa yg mempunyai konsep enkapsulasi data dan juga mempunyai konsep kelas dan instant. Contoh bahasa berasaskan objek ialah Ada Sesuatu bahasa komputer dikatakan sbg bahasa berorientasikan objek jika ia memenuhi syarat berikut : Boleh enskapsulasi data Mempunyai konsep kelas dan instant Boleh melaksanakan konsep perwarisan Boleh melaksanakan konsep polimorfisma Bahasa berorientasikan objek yg digunakan sekarang terbahagi kpd 2 : bahasa orientasi objek asli dan bahasa hibrid

24 Bahasa Berorientasikan Objek samb…
Bahasa hibrid merupakan satu bahasa yg agak fleksibel di mana pengaturcara blh menulis aturcara samada secara berstruktur atau berorientasikan objek. Bahasa orientasi objek asli hanya membenarkan pengaturcara menulis aturcara secara berorientasikan objek shj. Contoh bahasa berorientasikan objek asli : Smalltalk, Simula, Eiffel, Actor dan Java Contoh bahasa hibrid : C++, Objective-C, Object-Pascal dan CLOS


Download ppt "F3031 : OBJECT ORIENTED PROGRAMMING"

Similar presentations


Ads by Google