635_P01 bsi

24
Pertemuan I Object Oriented

description

contoh saja

Transcript of 635_P01 bsi

Page 1: 635_P01 bsi

Pertemuan I

Object Oriented

Page 2: 635_P01 bsi

Pendahuluan Pemodelan Sistem BerbasisObjek

• Sejarah Object Oriented

� Konsep awal programming (Basic) dengan kekuatan GOTOstatement, ini merupakan Non Procedural Language

� Procedural Language / Bahasa pemograman terstrukturmenghilangkan kelemahan GOTO konsep non procedurallanguage

Contoh : Pascal, COBOL, FORTRAN, BASIC dll

� Object Oriented Programming, mengarah pada konsepobject. Akhir tahun 1960 diperkenalkan pertama kali denganbahasa SIMULA. Tahun 1970 dikembangkan Smaltalk.

Bahasa pemrograman lainnya : Clipper 5.2 Java, Prolog dll

Page 3: 635_P01 bsi

Pendahuluan Pemodelan Sistem BerbasisObjek

� Visual Object Oriented Programming, tahun 1991diperkenalkan pertama kali dengan bahasa Visual Basic olehMicrosoftBahasa pemograman lainnya : Visual C++, Visual Foxpro 3.0,CORBA (Common Object Request Broker Architecture), dll

• Pengembangan berorientasi objek merupakan cara berpikirbaru tentang perangkat lunak berdasarkan abstraksi yangterdapat dalam dunia nyata. Dalam konteks pengembanganmenunjuk pada bagian awal dari siklus hidup pengembangansistem, yaitu survei, analis, desain, implementasi danpemeliharaan sistem. Hal yang lebih penting dalampengembangan berorientasi objek adalah konsepmengidentifikasi dan mengorganisasi domain aplikasidari pada penggunaan bahasa pemrograman, berorientasiobjek atau tidak.

Page 4: 635_P01 bsi

Konsep Pemodelan

� Berorientasi objek dalam proses konseptual terpisahdengan bahasa pemrograman sampai tahap terakhir.

� Pengembangan berorientasi objek secara mendasarmerupakan cara berpikir baru dan bukan suatu teknikpemrograman.

� Dapat melayani sebagai media spesifikasi, analisa,dokumentasi dan interface seperti halnyapemrograman.

� Bahkan sebagai alat pemrograman, dapat memilikiberbagai sasaran, termasuk bahasa pemrograman danbasis data sebaik dengan bahasa pemrogramanberorientasi obyek.

Page 5: 635_P01 bsi

Metodologi Object Oriented

• Fokus utama metodologi ini pada objek, dapatdigambarkan sebagai benda, orang, tempat dansebagainya yang memiliki atribut dan metode.

• Diperkenalkan tahun 1980 menggunakan perangkatkerja dan teknik-teknik yang dibutuhkan dalampengembangan sistem, yaitu dynamic dan static objectoriented model, state transition diagram dan casescenario.

Page 6: 635_P01 bsi

Model Object OrientedObjek dan kelas

� Objek didefinisikan sebagai konsep, abstraksi atau bendadengan batasan dan arti untuk suatu masalah.

� Semua objek mempunyai identitas yang berbeda denganlainnya.

� Kadang-kadang objek berarti suatu barang, maka digunakanistilah object instance, dan object class untuk menunjukkansatu grup dari barang yang sama.

� Sebuah objek merupakan sebuah entitas yang mencakupdata dan metode.

� Kelas merupakan satu atau lebih objek dengan persamaanatribut dan metode, sedangkan kelas-&-objek adalah kelasdengan satu atau lebih objek di dalamnya.

� Nama kelas adalah kata benda tunggal, atau kata sifat dankata benda.

Page 7: 635_P01 bsi

Model Object Oriented

Istilah-istilah Objek

• Atribut : Data item yang menegaskan Objek

• Operasi : Fungsi di dalam kelas yang

dikombinasikan bentuk tingkah laku kelas

• Metode : Pelaksanaan prosedur (badan dari

kode yang mengeksekusi respon terhadap

permintaan objek lain di dalam sistem).

Page 8: 635_P01 bsi

Struktur Objek dan Hirarki Kelas

1. Whole-Part Structure memperlihatkan hirarki dari suatukelas sebagai komponen dari kelas lain yang disebutjuga sub objek.Contohnya, kelas Mobil adalah Whole dankomponennya Mesin, Rangka, dll merupakan Part1,Part 2, …, Partn.

Page 9: 635_P01 bsi

Struktur Objek dan Hirarki Kelas

2. Gen-Spec memperlihatkan kelas sebagai spesialisasi darikelas diatasnya� Kelas yang mempunyai sifat umum disebut Generalization,

Superclass atau Topclass. � Kelas yang mempunyai sifat khusus disebut Specialization.

Contohnya, kelas Mobil adalah Generalization, sedangkanSedan, Truk, Minibus, dll merupakan Specizlization1, Specialization2, dst

Page 10: 635_P01 bsi

Tahap-tahap metodologi berdasarkanSistem Development Life Cycle (SDLC),

dengan berorientasi objek dapat dijelaskansebagai berikut :

1. AnalisaModel analisa adalah abstraksi yang ringkas dan tepat dari apayang harus dilakukan oleh sistem, dan bagaimana melakukannya.Objek dalam model harus merupakan konsep domain dari aplikasi,bukan merupakan implementasi komputer seperti struktur data.

2. DesignFokus object design adalah perencanaan struktur data danalgoritma yang diperlukan untuk implementasi setiap kelas. Objekdomain aplikasi dan objek domain komputer dijelaskan denganmenggunakan konsep dan notasi berorientasi objek yang sama

Page 11: 635_P01 bsi

Tahap-tahap metodologi berdasarkan SistemDevelopment Life Cycle (SDLC), dengan

berorientasi objek dapat dijelaskan sebagaiberikut :

3. Implementasi� Kelas, objek dan relasinya dikembangkan dalam tahap

object design, akhirnya diterjemahkan ke dalam bahasapemrograman, basis data, dan implementasi perangkatkeras.

� Dalam tahap implementasi hal yang penting adalahmengikuti penggunaan perangkat lunak yang baik.

Page 12: 635_P01 bsi

Object

Objek adalah kombinasi antara struktur data dan perilaku dalamsatu entitas dan mempunyai nilai tertentu yang membedakanentitas. Bisa berupa:

• obyek konkrit : rumah, sekolah, dosen, mahasiswa, dll.• obyek abstrak : mata kuliah, penjadwalan, dll.

Karakteristiknya adalah:� Memiliki Identity (identitas)� Memiliki klasisfikasi� Memiliki state (kondisi/keadaan)

State sebuah objek dinyatakan dalam attribute/properties� Memiliki behavior (perilaku/method)

Perilaku suatu objek dinyatakan dalam operation. Perilaku suatu objek adalah mendefinisikan bagaimana objektersebut bertindak dan memberikan reaksi.

Page 13: 635_P01 bsi

CONTOH OBYEK

Atribut :• Nomor Polisi• Ban, Stir, Pedal Kopling/Gas/Rem,• Warna, Tahun Produks

Behavior/Tingkah Laku :

• Cara Menghidupkan Mesin

• Cara Manjalankan Mobil

• Cara Memundurkan Mobil

Page 14: 635_P01 bsi

Object : Mobil

Page 15: 635_P01 bsi

Karakteristik Berorientasi Objek

Berorientasi objek mempunyai karakteristik sebagai berikut:

1. Encapsulation (pembungkusan)• Pengkapsulan merupakan dasar untuk pembatasan ruang

lingkup program terhadap data yang diproses. Dengandemikian objek atau prosedur dari luar tidak dapatmengaksesnya. Data terlindung dari prosedur atau objek lainkecuali prosedur yang berada dalam objek itu sendiri.

• Sebuah object yang terkapsulasi dapat dianggap sebagaiblack box.

• Proses di dalamnya adalah tertutup bagi klien, yang hanyamemanggil metode yang menjadi interface.

• Dalam Java, dasar enkapsulasi adalah Class. Variabel ataumethod sebuah class tidak dapat diakses dengan menjadikanclass tersebut private/protected.

Page 16: 635_P01 bsi

CONTOH ENKAPSULASI

Disini terjadi penyembunyian informasi tentang bagaimanacara kerja pengecekan validitas kartu, kecocokan pin yangdimasukkan, koneksi ke database server, dll, dimana hal-hal tersebut tidak perlu diketahui oleh pengguna tentangbagaimana cara kerjanya.

Page 17: 635_P01 bsi

Karakteristik Berorientasi Objek

2. Inheritance (pewarisan)Inheritance (pewarisan) adalah teknik yang menyatakan bahwaanak dari objek akan mewarisi data/atribut dan metode dariinduknya langsung. Bila inheritance dipergunakan, kita tidakperlu membuat atribut dan metode lagi pada anaknya, karenatelah diwarisi oleh induknya. Inheritance mempunyai arti bahwaatribut dan operasi yang dimiliki bersama di antara class yangmempunyai hubungan secara hirarki.

• Sebuah class bisa mewariskan atribut dan method-nya ke classyang lain– Class yang mewarisi disebut superclass– Class yang diberi warisan disebut subclass– Sebuah subclass bisa mewariskan atau berlaku sebagai

superclass bagi class yang lain => disebut multilevelinheritance

Page 18: 635_P01 bsi

CONTOH INHERITANSI

Page 19: 635_P01 bsi

GENERALISASI

• Generalisasi adalah relasi antara beberapa subclassdengan superclass di atasnya.

• Kelas yang lebih rendah mewarisi semua atribut yangdimiliki oleh kelas yang lebih tinggi dan juga memilikiatribut yang membedakannya dengan kelas-kelas lainyang sederajat.

Page 20: 635_P01 bsi

GENERALISASI

Page 21: 635_P01 bsi

Karakteristik Berorientasi Objek

3. Polymorphisme

Polymorphisme yaitu aksi yang sama yang dapatdilakukan terhadap beberapa objek. Polimorfismeberarti bahwa operasi yang sama mungkin mempunyaiperbedaan dalam kelas yang berbeda.

• Polymorphism adalah kemampuan untuk tampil dalamberbagai bentuk.

• Hal ini mengacu pada kemungkinan message yangsama dikirimkan ke obyek-obyek lain pada class yangberbeda, dan merespon secara berbeda.

Page 22: 635_P01 bsi

Contoh Polymorphism

Page 23: 635_P01 bsi

Perbedaan Object Oriented dengan Non Object

1. Penggunaan alat� Metodologi non objek menggunakan beberapa alat untuk

menggambarkan model seperti data flow diagram, entityrelationship diagram dan structure chart.

� Sedangkan metodologi berorientasi objek menggunakansatu jenis model dari tahap analisa sampai implementasi,yaitu diagram objek.

Page 24: 635_P01 bsi

Perbedaan Object Oriented dengan Non Object

2. Data dan proses� Pada metodologi non objek, data dan proses dianggap

sebagai dua komponen yang berlainan� Sedangkan pada metodologi berorientasi objek, data dan

proses merupakan satu kesatuan, yaitu bagian dari objek.

3. Bahasa pemrograman� Metodologi non objek dipergunakan untuk melengkapi

pemrograman terstruktur pada bahasa generasi ketiga.� Sedangkan metodologi berorientasi objek dipergunakan

untuk pemrograman berorientasi objek dan bahasagenerasi keempat.