12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
Atribut dan method/fungsi dari objek induk diturunkan kepada anak objek, demikian seterusnya. Pendefinisian objek dipergunakan untuk membangun suatu hirarki dari objek turunannya, sehingga tidak perlu membuat atribut dan method lagi pada anaknya, karena telah mewarisi sifat induknya. Inheritance mempunyai arti bahwa atribut dan operasi yang dimiliki bersama di antara kelas yang mempunyai hubungan secara hirarki. Suatu kelas dapat ditentukan secara umum, kemudian ditentukan secara spesifik menjadi subkelas. Setiap subkelas mempunyai hubungan atau mewarisi semua sifat yang dimiliki oleh kelas induknya, dan ditambah dengan sifat unik yang dimilikinya. Sifat yang dimiliki oleh kelas induknya tidak perlu diulang dalam setiap subkelas. Sebagai contoh : Sedan dan Sepeda Motor adalah subkelas dari Kendaraan Bermotor. Kedua subkelas mewarisi sifat yang dimiliki oleh kendaraan bermotor, yaitu : Mempunyai mesin Dapat berjalan
Kedua subkelas mempunyai sifat masing-masing yang berbeda, misalnya: jumlah roda, dan kemampuan untuk berjalan mundur yang tidak dimiliki oleh sepeda motor. Beberapa faktor dari superkelas yang bersifat umum dapat dimasukkan ke dalam kelas induknya serta mewarisi sifat tersebut pada kelas turunannya, sehingga mengurangi pengulangan yang terjadi dalam desain dan pemrograman. Hal ini yang merupakan keuntungan dari sistem berorientasi objek. c. Polymorphism Polymorphism(polimorfisme) yaitu konsep yang menyatakan bahwa sesuatu yang sama dapat mempunyai bentuk dan perilaku berbeda. Polimorfisme mempunyai arti bahwa operasi yang sama mungkin mempunyai perbedaan dalam kelas yang berbeda. Operasi MOVE mungkin mempunyai perbedaan dalam kelas windows atau kendaraan bermotor. Suatu implementasi yang spesifik dari suatu operasi dari kelas tertentu disebut metoda. Karena operator yang berorientasi objek bersifat polimorfisme, mungkin dapat mempunyai lebih dari satu metoda.
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
Perbedaan dengan Metodologi Non Objek Perbedaan yang spesifik dengan metodologi non objek adalah: Penggunaan Alat Metodologi non objek menggunakan beberapa alat untuk menggambarkan model seperti: data flow diagram, entity relationship diagram, dan structure chart. Sedangkan pada metodologi berorientasi objek menggunakan satu jenis model dari tahap analisis sampai implementasi, yaitu object diagram(diagram objek) Data dan Proses 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. Bahasa Pemrograman Metodologi non objek dipergunakan untuk melengkapi pemrograman terstruktur pada bahasa generasi ketiga, sedangkan pada metodologi berorientasi objek dipergunakan untuk pemrograman berorientasi objek dan bahasa generasi empat.
Tema Berorientasi Objek Terdapat beberapa tema sebagai dasar teknologi berorientasi objek yang sangat menunjang dalam sistem berorientasi objek, antara lain: 1. Abstraksi Abstraksi berarti memfokuskan pada aspek yang melekat dari entitas dan mengabaikan sifat yang sementara. Dalam pengembangan sistem, hal ini berarti memfokuskan pada apakah suatu objek dan apa yang dikerjakan oleh objek tersebut, sebelum menentukan implementasinya. 2. Pengkapsulan(information hiding) Pengkapsulan terdiri dari pemisahan aspek eksternal dari suatu objek, dimana dapat diakses oleh objek lain. Pengkapsulan melindungi program
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
dari saling keterkaitan sehingga kesempatan kecil mempunyai akibat penyimpangan. 3. Menggabungkan data dan Perilaku Kode yang bukan berorientasi objek menampilkan isi dari window harus membedakan tipe dari setiap bentuk, seperti poligon, lingkaran atau teks dan memanggil prosedur yang tepat untuk menampilkannya. Program berorientasi objek lebih sederhana meminta operasi draw pada setiap bentuk, dimana prosedur yang digunakan dibuat implisit oleh setiap objek berdasarkan kelasnya dan tidak perlu selalu mengulang pilihan prosedur setiap saat operasi dilakukan dalam program aplikasi. Pemeliharaan lebih mudah, karena prosedur yang dipanggil tidak perlu dimodifikasi setiap kelas baru ditambahkan dan dalam sistem berorientasi objek hirarki struktur data identik dengan pewarisan hirarki operasi. 4. Penggunaan bersama(Reusability) Teknik berorientasi objek menawarkan reusability yaitu penggunaan bersama untuk beberapa tingkat yang berbeda. Pewarisan struktur data dan perilaku memungkinkan penggunaan bersama antara beberapa subkelas yang sama tanpa redundancy.
Definisi berorientasi objek Secara spesifik, pengertian berorientasi objek bearti bahwa kita menggornisasikan perangkat lunak sebagai kumpulan dari objek tertentu yang memiliki struktur data dan perilakunya. Hal ini yang membedakan dengan pemrograman konvensional dimana struktur data dan perilaku hanya berhubungan secara terpisah. Terdapat beberapa cara untuk menentukan karakteristik dalam pendekatan berorientasi objek, tetapi secara umum mencakup empat hal, yaitu: a. identifikasi b. klasifikasi c. polymorphism(polimorfisme) d. inheritance(pewarisan)
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
OBJECT
Object memiliki state State adalah himpunan dari keadaan yang menggambarkan objek tersebut
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
State dinyatakan dengan attribute Attribute adalah nilai internal suatu object yang mencerminkan karakteristik objek , kondisi sesaat, koneksi dengan object lain dan identitas
Perubahan state dicerminkan oleh prilaku ( behavior ) Behavior suatu objek mendefinisikan bagaimana sebuah objek bertindak (beraksi) dan memberi reaksi Interface adalah pintu untuk mengakses servis objek.
OBJECT LAMPU
Kelas (class) adalah definisi umum (pola, template atau cetak biru) untuk himpunan objek bisnis. Kelas memiliki attribut dan prilaku, behaviors, service atau message
Encapsulation adalah penyatuan antara data dan proses Association adalah hubungan antar objek yang saling membutuhkan Aggregation adalah bentuk khusus dari asosiasi yang menggambarkan seluruh bagian suatu objek yang merupakan bagian dari objek lainnya Contoh :
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
Objek tanggal dapat disusun dari objek hari, objek bulan, dan objek tahun.
CLASS
Kelas (class) adalah definisi umum (pola, template atau cetak biru) untuk himpunan objek bisnis. Mendefinisikan sekumpulan obyek yang memiliki metoda-metoda dan jenis data yang sama; obyek-obyek tersebut didefinisikan secara format dalam kelas atau dengan perkataan lain suatu obyek merupakan instance dari kelas obyeknya. Kelas memiliki attribut dan prilaku, behaviors, service atau message. Contoh kelas : Binatang, mahasiswa dan lain- lain Suatu object class menggambarkan kumpulan dari objek yang mempunyai sifat (atribut), perilaku umum (operasi), relasi umum dengan objek lain dan semantik umum. Contoh : Orang, perusahaan , binatang, proses adalah objek. Setiap orang mempunyai umur, IQ, dan mungkin pekerjaan. Setiap proses mempunyai pemilik, prioritas, list dari sumber daya yang dibutuhkan. Objek dan object class sering sama sebagai benda dalam
OBJECT
Pada dasarnya semua benda yang ada di dunia nyata dapat dianggap sebagai sebuah objek. Jika perhatikan lebih lanjut, pada dasarnya ada dua karakteristik yang utama pada sebuah objek , yaitu : Setiap objek memiliki atribut sebagai status yang kemudian akan disebut sebagai state. Setiap objek memiliki tingkah laku yang kemudian akan disebut sebagai behaviour. Karakteristik dari objek: a. objek memiliki identitas
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
identitas berarti bahwa data dapat diukur dan memiliki nilai tertentu yang membedakan dengan entitas. Contoh identitas dari objek antara lain: suatu paragraph dari dokumen suatu windows dari workstation raja putih dari buah catur b. c. objek dapat kongkrit contoh: arsip dalam system objek dapat konseptual contoh: kebijakan penjadwalan dalam multiprocessing pada sistem operasi d. e. objeks mempunyai sifat yang melekat pada identitasnya. Dua objek dapat berbeda walaupun bila semua nilai atributnya identik.
Macam-macam objek
Komputer
Kelinci
Gedung
Klasifikasi berarti suatu kegiatan mengumpulkan data (atribut) dan perilaku (operasi/methods) yang mempunyai struktur data sama ke dalam satu grup yang disebut dengan kelas (class).
Kelas merupakan abstraksi yang menjelaskan sifat penting pada suatu aplikasi dan mengabaikan yang lain. Setiap kelas menunjukkan suatu kumpulan infinite(terbatas) yang mungkin dari sebuah objek. Suatu objek dapat dikatakan sebagi instans dari kelas. Setiap instans dari kelas mempunyai nilai individu untuk setiap nama atribut dan operasi, tetapi memiliki kesamaan atribut dan operasi dengan instans lain dalam kelas.
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
Objek polygon
Kelas Poligon Attribut Titik Sudut Batas Warna Operasi Gambar() Hapus() Translasi()
Objek mobil
Kelas mobil
METHOD
Method merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object. Contoh : pada object mangga : terdapat method ambilRasa , kupasKulit dan lain-lain.
12
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.
12
10
Analisa dan Perancangan Sistem Berorientasi Objek FX. Bima Cahya Putra, M.Kom.