KONSEP PEMROGRAMAN BERORI ENTASI OBYEK

8.1. KONSEP PEMROGRAMAN BERORI ENTASI OBYEK

Pemrograman Berorientasi Obyek ( Object Oriented Programming – OOP) adalah programming paradigm yang menggunakan obyek dan interaksinya untuk merancang aplikasi dan program komputer. OOP tidak banyak digunakan sebelum awal tahun 1990an. Tapi sekarang menjadi sesuatu yang sudah lumrah digunakan. Bahasa-bahasa pemrograman seperti keluarga dotNet dari Microsoft (Visual Basic.Net, Visual C#, dan Visual J), Borland Delphi, Java, Phyton, PHP versi 5 ke atas, C++ dan banyak lainnya merupakan bahasa pemrograman yang mendukung konsep OOP.

Apakah obyek itu? Semua benda yang ada didunia ini dapat kita sebut sebagai obyek. Guru mata pelajaran RPL kalian adalah suatu obyek. Buku yang kalian pegang ini juga suatu obyek. Bahkan mata pelajaran RPL adalah juga sebuah obyek. Setiap obyek akan mempunyai karakteristik dan tingkah laku tertentu. Karakteristik disebut attribute dan tingkah laku disebut sebagai behavior atau method.

Dalam difinisi pemrograman berorientasi obyek dikenal adanya kelas dan obyek. Class atau kelas mendefinisikan karakteristik abstrak dari sesuatu termasuk atribut atau sifat-sifat dari sesuatu dan apa yang dapat dikerjakan oleh sesuatu ( method). Sebagai contoh, mobil adalah sebuah kelas yang memiliki attribut warna, merek, tipe dan lain-lain. Mobil juga punya method antara lain, maju, mundur dan berhenti (lihat Gambar 8.2).

Gambar 8.2. Kelas, atribut dan method.

170 Rekayasa Perangkat Lunak

Obyek adalah contoh dari kelas yang sudah didefinisikan. Atribut dan method dari kelas secara otomatis akan menurun pada obyek namun dengan kekhususan. Sebagai ilustrasi kita perhatikan Gambar 8.2. Pada gambar tersebut, kita bisa identifikasi kelasnya adalah mobil dengan atribut dan methodnya. Obyeknya adalah sebuah mobil sedan dengan merk Toyota, dan warnanya adalah merah. Sedan itu juga memiliki method maju, mundur dan berhenti. Pada kasus ini mobil sedan disebut sebagai instance atau turunan dari kelas mobil.

Ada beberapa konsep penting yang kalian harus pahami dalam pemrograman berorientasi yaitu, abstraksi, enkapsulasi, inheritance dan polymorphism.

8.1.1. Abstraksi

Abstraction atau disebut juga composition merupakan prinsip penyederhanaan dari sesuatu yang kompleks dengan cara memodelkan kelas sesuai dengan masalahnya. Untuk lebih memperjelas pengertian coba perhatikan Gambar 8.3. Pada gambar tersebut terlihat sebuah mobil jika dipecah-pecah bagian-bagiannya kita akan dapatkan seperti ban, mesin, rangka mobil, kaca, dan lain-lain dan hal in berlaku sebaliknya. Jika kita gabungkan bagian-bagian tersebut maka kita akan mendapatkan sebuah kelas mobil. Pada pemrograman berorientasi obyek biasanya kalau kita menjumpai beberapa kelas atau obyek yang kalau diidentifikasi memiliki banyak kesamaan atribut dan method maka kita akan menggabungkan kelas-kelas tersebut menjadi satu super class.

Gambar 8.3. Contoh abstraction.

8.1.2. Enkapsulasi

Prinsip encapsulation adalah prinsip penyembunyian detil dari sebuah kelas terhadap obyek yang berinteraksi terhadapnya. Sebagai contoh ketika kita menjalankan mobil, sebenarnya kita sedang berinteraksi dan kita meminta kepada mobil untuk menjalankan methodnya seperti maju, mundur atau berhenti. Kita berinteraksi hanya dengan beberapa bagian dari mobil ( interface) seperti persneling, setir, pijakan gas, pijakan rem dan bagian lain. Tapi detil proses yang terjadi didalam mobil bagaimana bisa maju, mundur atau berhenti kita tidak perlu tahu.

Rekayasa Perangkat Lunak 171

8.1.3. I nheritance

Inheritance atau pewarisan adalah prinsip pewarisan sifat dari orang tua ke anak atau turunannya yang diterapkan pada kelas. Orang tua memiliki atribut dan method yang lebih umum dibandingkan dengan anak atau turunannya. Pada Gambar 8.4. kita bisa tahu bahwa mobil memiliki atribut dan method yang lebih umum dibandingkan dengan sedan , truk atau bus. Mobil sebagai kelas yang mewarisi disebut sebagai super class, sedangkan sedan, truk dan bus sebagai kelas yang diwarisi disebut sub class.

Gambar 8.4. Pewarisan.

8.1.4. Polymorphism

Polymorphism mungkin merupakan konsep pemrograman beroerientasi obyek yang paling sulit dimengerti. Arti dari polymorphism adalah kemampuan dari suatu obyek untuk mempunyai lebih dari satu bentuk. Atau dalam pengertian lain adalah kita dapat menerapkan sesuatu hal yang berbeda melalui suatu cara yang sama. Sebagai contoh kalau ada empat ekor hewan berbeda yaitu burung, ular, katak, dan singa kemudian kita minta untuk bergerak, maka burung akan terbang, ular akan melata, katak melompat, singa mungkin akan berlari. Jadi suatu method yang sama mungkin bisa diterapkan secara lain jika obyek yang menerapkan adalah berlainan.

Dokumen yang terkait

ANALISIS KESESUAIAN ANTARA RENCANA PEMBANGUNAN JANGKA MENENGAH DAERAH 2010-2015 DENGAN ALOKASI DANA, PROGRAM, DAN CAPAAN PROGRAM SATUANKERJA PERANGKAT DAERAH (Studi pada Kabupaten Jember)

1 28 68

ANALISIS KINERJA SIMPANG MENGGUNAKAN PERANGKAT LUNAK KAJI DAN PTV VISTRO (STUDI KASUS : SIMPANG BERSINYAL DAN TAK BERSINYAL PERKOTAAN JEMBER)

5 45 18

ANALISIS PENGARUH PERSEPSI PENERAPAN TRANSPARANSI DAN AKUNTABILITAS PUBLIK TERHADAP KINERJA SATUAN KERJA PERANGKAT DAERAH (Studi Empiris Pada Pemerintah Daerah Kabupaten Bondowoso)

1 31 18

ANALISIS PENGARUH PERSEPSI TRANSPARANSI DAN AKUNTABILITAS TERHADAP KINERJA LAYANAN PUBLIK SATUAN KERJA PERANGKAT DAERAH KABUPATEN BANYUWANGI

1 32 18

ANALISIS PENGARUH PERSEPSI TRANSPARANSI DAN AKUNTABILITAS TERHADAP KINERJA LAYANAN PUBLIK SATUAN KERJA PERANGKAT DAERAH KABUPATEN BANYUWANGI

19 247 18

PERANGKAT PEMBELAJARAN RENCANA PELAKSANAAN RENCANA PELAKSANAAN PEMBELAJARAN PEMBELAJARAN5

0 39 600

PERANGKAT PEMBELAJARAN RENCANA PELAKSANAAN RENCANA PELAKSANAAN PEMBELAJARAN PEMBELAJARAN 4

0 30 284

PENGUJIAN PERANGKAT LUNAK PADA SISTEM INFORMASI RAPOR ONLINE MENGGUNAKAN METODE BLACKBOX TESTING DENGAN TEKNIK EQUIVALENCE CLASS PARTITIONING

3 38 23

PENGEMBANGAN APLIKASI CLIENT E-LEARNING UNTUK LEARNING MANAGEMENT SYSTEM (LMS) CLAROLINE PADA PERANGKAT MOBILE ANDROID

2 27 29

HUBUNGAN KEPEMIMPINAN KEPALA DESA DENGAN EFEKTIVITAS KERJA PERANGKAT DESA (Studi Pada Pemerintah Desa Talang Bojong Kecamatan Kotabumi Kota Kabupaten Lampung Utara)

0 25 90