Kegiatan Belajar 2 : PPL | KARAKTERISTIK METODOLOGI PEMODELAN BERORIENTASI OBJEK

B. KARAKTERISTIK METODOLOGI PEMODELAN BERORIENTASI OBJEK 

Pemodelan berorientasi objek memiliki beberapa karakteristik yang berhubungan dengan metode yang dapat digunakan untuk perencanaan awal dalam pembuatan aplikasi. Beberapa metode yang digunakan dalam pemodelan berorientasi objek yaitu abstraksi, encapsulation, inheritance, dan polimorfism. Untuk pembahasan lebih lanjut, pelajari penjelasan tersebut secara seksama.

1. Abstraksi

    Abstraksi adalah pengabstrakan untuk menyeleksi aspek-aspek tertentu pada suatu masalah. Abstraksi berfungsi untuk menyembunyikan kerumitan dari suatu proses.

    Contoh abstraksi dalam model pemrograman berorientasi objek, kita sebagai programmer atau pengembang pogram tidak perlu tahu secara detail cara membuat sebuah tombol, yang perlu kita ketahui adalah cara menggunakan objek tombol yang sudah ada (baik data/properti maupun methodnya). Dalam kasus ini sipembuat objek telah mengabstraksikan semua proses yang berkaitan dengan pembuatan tombol.

2. Pembungkusan (Encapsulation)

    Encapsulation berarti pembungkusan. Dalam pemodelan berorientasi objek, dapat diartikan sebagai pembungkus class dan apa saja yang ada di dalam class (method dan atribut) yang menjadi dasar pembatasan ruang lingkup program terhadap data yang akan di proses. Manfaat proses pembungkusan yaitu kita dapat memodifikasi kode program tanpa merusak kode program yang telah digunakan pada kelas lain.

    Encapsulation dikenal sebagai pemberi hak akses untuk melakukan suatu proses, sehingga tidak semua class dapat di akses. Hak akses dalam metode ini ada tiga macam, yaitu sebagai berikut.

  1. Public: Pemberian hak akses terhadap atribut atau method agar dapat di akses oleh semua class. Ketika sebuah properti atau method dinyatakan sebagai public, maka seluruh kode program diluar class dapat mengaksesnya termasuk turunan.
  2. Private: Pemberian hak akses private terhadap atribut atau method pada suatu class tertentu maka class itu sendiri yang dapat mngaksesnya tidak termasuk class turunan.
  3. Protected: Pemberian hak akses protected terhadap atribut atau method pada suatu class tertentu maka class itu sendiri yang dapat mengaksesnya, termasuk turunannya.
3. Pewarisan (Inheritance)
    Inheritance berarti pewarisan atau penurunan, sehingga class dapat menurunkan atribut dan metode yang dimilikinya kepada class lain. Hal ini sangat bermanfaat untuk menghindari duplikat kode program, hanya perlu memanggil class yang diperlukan.
    Konsep inheritance membuat sebuah struktur atau 'hierarchy' class dalam kode program. Class yang akan diturunkan dapat disebut class induk (parent class), Super class, atau Base class. sedangkan yang menerima penurunan dapat disebut anak (child class), sub class, derived class atau heir class.

4. Polimorfism
    Dari segi bahasa polimorfism (bahasa Inggris : Polymorphism) berasal dari dua kata bahasa Latin yakni poly dan morph. Poly berarti banyak dan morph berarti bentuk.
    Dalam pemodelan berorientasi objek, metode polimorfism dianggap penting setelah metode abstraksi dan inheritance. Polimorfism memiliki konsep, yaitu suatu class yang menggunakan banyak metode dengan nama yang sama. Penggunaan metode dengan nama yang sama dapat ditentukan dengan method overloading dan overriding.
    Method overloading yaitu menggunakan nama fungsi yang sama tetapi dengan argumen yang berbeda, Syarat overloading yaitu nama return type, argument, dan parameter harus sama. Sedangkan method overriding yaitu fungsi dalam class turunan yang mempunyai nama, return type argumen function yang sama agar dapat diwariskan ke sub class.

C. Perbandingan PBO dengan Program Terstruktur
Bahasa pemrograman memberikan model kepada programmer untuk menulis kode program. Ada beberapa perbedaan dalam bahasa pemrogrman yaitu pemrograman tidak terstruktur, prosedural, struktural dan berorientasi objek. Perhatikan penjelasan berikut ini dengan seksama.


1. Pemrograman Tidak Terstruktur
    Pemrograman tidak terstruktur biasa disebut programming monolithic. Seluruh permasalahan sebagai blok tunggal, dan tidak ada kemanan sistem, sehingga akan sulit untuk menemukan kesalahan program.
2. Pemrograman Prosedural
    Pemrograman prosedural memungkinkan sebuah program dipecah mejadi beberapa sub masalah tergantung pada fungsinya. Dalam hal ini, masalah disebut prosedur atau metode. Prosedur yang ada dalam program ini dapat dipanggil setiap saat selama program berjalan. Program ini memiliki variabel yang global. Karena prosedur dalam program ini bersifat global bila ada kesalahan, akan sulit menemukan kesalahan program. Bahasa pemrograman yang mendukung pemrograman prosedural yaitu pascal, delphi, dan C.
3. Pemrograman Struktural
    Pemrograman struktural memungkinkan programnya dibagi menjadi beberpa modul, dan modul tersebut dibagi menjadi beberpa fungsi. Setiap modul dapat berjalan sendiri atau independen.
4. Pemrograman Berorientasi Objek
    Pemrograman berorienrasi objek adalah pemrograman yang dibagi menjadi sub-sub kecil yang disebut objek. Sedangkan data dan fungsi objek merupakan atribut objek. Data dari suatu objek hanya dapat diakses oleh fungsi terkait. Bahasa pemrograman yang mendukung pemrograman berorientasi objek yaitu java, C++, VB, Bahasa C, dan PHP. 

D. Paradigma Pemodelan Berorientasi Objek
    Secara etimologis, istilah paradigma pada dasarnya berasal dari bahasa Yunani yaitu dari kata "para" yang artinya disebelah atau disamping, dan kata "diegma" yang artinya teladan, ideal, dan model. Sedangkan secara terminolgis, istilah paradigma diartikan sebagai cara pandang seseorang yang digunakan untuk menilai dunia dan alam sekitarnya untuk menjabarkan berbagai macam permasalahan dunia yang kompleks.
    Bagaimana dengan paradigma pada pemodelan berorientasi objek? Paradigma pemodelan berorientasi objek merupakan cara berfikir dalam pembuatan sebuah program, dengan mengombinasikan antara data dan fungsi untuk mengakses data menjadi sebuah objek. Pada pemodelan berorientasi objek, hal yang harus diperhatikan adalah menetukan objek-objek yang terlibat dalam sebuah program.

Post a Comment

12 Comments