Metodologi berorientasi objek diperkenalkan pada tahun 1980, menggunakan perangkat kerja dan teknik-teknik yang dibutuhkan dalam pengembangan sistem, yaitu dynamic dan static object oriented model, state transition diagram dan case scenario.
Fokus utama metodologi ini pada objek, dengan melihat suatu sistem terdiri dari objek yang saling berhubungan. Objek dapat digambarkan sebagai benda, orang, tempat dan sebagainya yang mempunyai atribut dan metode. Metodologi terdiri dari pembuatan model dari domain aplikasi, kemudian menambahkan rincian implementasi pada saat pembuatan desain dari suatu sistem. Tahap-tahap metodologi berdasarkan System Development Life Cycle(SDLC) digunakan dengan memperhatikan karakteristik khusus berorientasi objek, sbb:
a. Project Management & Planning
b. Analisis
c. Desain
d. Implementasi dan operasi
Karakteristik Metodologi Berorientasi Objek
Metodologi pengembangan sistem berorientasi objek ada tiga karakteristik utama, yaitu:
a. Encapsulation
Encapsulation (pengkapsulan) merupakan dasar untuk pembatasan ruang lingkup program terhadap data yang diproses. Data dan prosedur atau fungsi atau method dikemas secara bersama-sama dalam suatu objek, sehingga prosedur atau fungsi lain dari luar tidak dapat mengaksesnya. Data terlindung dari prosedur atau lain kecuali prosedur yang berada dalam objek itu sendiri.
b. Inheritance
Inheritance(pewarisan) adalah teknik yang menyatakan bahwa anak dari objek akan mewarisi data/atribut dan metode dari induknya langsung. 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.
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 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:
- identifikasi
- klasifikasi
- polymorphism(polimorfisme)
- inheritance(pewarisan)
Tidak ada komentar:
Posting Komentar