1 / 24

F3031 : OBJECT ORIENTED PROGRAMMING

F3031 : OBJECT ORIENTED PROGRAMMING. Pengenalan Kepada Orientasi Objek Prepared by : Suzila Yusof. PENGATURCARAAN BERSTRUKTUR. Aturcara dipecah-pecahkan kepada modul-modul atau prosedur Setiap modul mempunyai data dan fungsinya sendiri yang boleh dicapai oleh fungsi lain

urvi
Télécharger la présentation

F3031 : OBJECT ORIENTED PROGRAMMING

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. F3031 : OBJECT ORIENTED PROGRAMMING PengenalanKepadaOrientasiObjek Prepared by : SuzilaYusof

  2. PENGATURCARAAN BERSTRUKTUR • Aturcaradipecah-pecahkankepadamodul-modulatauprosedur • Setiapmodulmempunyai data danfungsinyasendiri yang bolehdicapaiolehfungsi lain • Rajah 1.1 menggambarkanbentukpengaturcaraanberstrukturdimana ac dipecahkankpdfungsi-fungsi • Setiapfungsimempunyaidatanyasendiridisampingberkongsi data global. • Fungsi-fungsiygmenggunakan data global inibolehmengubah data tersebuttanpasebarangkekangan • Bagi ac ygbesar, adalahagaksukarutkmengenalpastifungsi-fungsiygmencapai data global. • Inimengakibatkanseandainyasesuatustruktur data global perludiubahsuai, fungsi-fungsi yang menggunakannyaperlujugadikajisamadaperludiubahsuaiakibatdariperubahankeatas data tersebut. • Masalahiniblhmengakibatkanberlakunyaralatdlm ac danprosespenyenggaraanagaksukardilakukan. • Olehitu, pengaturcaraanberstrukturterbuktigagaldalampenyelesaianmasalahdalamkrisisperisian.

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

  4. PERMASALAHAN DALAM PEMBANGUNAN PERISIAN BERSTRUKTUR Krisisygbiasaberlakudalampembangunanperisianmenggunakanpengaturcaraan berstrukturadalah : • Projektidakdptdisiapkan pd tarikhygditetapkan • Pembangunan projekmelebihianggarankos • Perisianygdihasilkantidakmenepatikehendakpenggunadaninimenjadikanperisiantersebuttidakdptdigunakanolehpengguna • Prosespenyenggaraanperisianagaksukar. Akibatnyajangkahayatsistemadalahpendek • Keperluanpengguna yang sentiasaberubah-ubahmenjadikanpembangunan ac agaksukar • Teknikpembangunanperisian yang digunakantidakmenggambarkanoperasiduniasebenar. Pengaturcaraanberorientasikanobjekseterusnyadihasilkanbagimengatasimasalah ygtlhdisebutkandiatas. Teknikpengaturcaraaninimuladigunakandenganmeluasnya padatahun 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 2 Object 1 Data Data Function Function Object 3 Data Function Rajah 1.2 : Objek-objekdalampengaturcaraan OO

  7. PENGATURCARAAN BERORIENTASIKAN OBJEK bukaAkaun( ) urusAkaun( ) kemaskiniMaklumat( ) Rajah 1.3 Rajah kelas yang menggambarkanhubungandianataraPelanggan, AkaundanPekerjaBank

  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

  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

  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 Abstrakkepada Pelajar Rajah 1.4 : Pengabstrakan data bagiPelajar

  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… Superclass subclass Rajah 1.6: Pewarisandanperlaksanaanpolimorfismakeatasoperasidipandu

  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 SyarikataKomputer JabatanPengurusan JabatanPenyelidikan JabatanKewangan

  23. Bahasa Berorientasikan Objek • Bahasaobjekterbahagikpd 2 : bahasaberasaskanobjekdanbahasaberorientasikanobjek • Bahasaberasaskanobjekmerupakanbahasaygmempunyaikonsepenkapsulasi data danjugamempunyaikonsepkelasdan instant. • ContohbahasaberasaskanobjekialahAda • Sesuatubahasakomputerdikatakansbgbahasaberorientasikanobjekjikaiamemenuhisyaratberikut : • Bolehenskapsulasi data • Mempunyaikonsepkelasdan instant • Bolehmelaksanakankonsepperwarisan • Bolehmelaksanakankonseppolimorfisma • Bahasaberorientasikanobjekygdigunakansekarangterbahagikpd 2 : bahasaorientasiobjekaslidanbahasahibrid

  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

More Related