Konsep Pemrograman Berorientasi Objek

Posted by

Pemrograman Berorientasi Objek (Inggris : object-oriented programming disingkat OOP) merupakan teknik membuat suatu program berdasarkan objek yang membagi program menjadi objek-objek yang nantinya dapat terhubung atau saling berinteraksi satu sama yang lainnya. 

Dalam konsep Pemrograman Berorientasi Objek dikenal beberapa istilah umum, yaitu : 

Attribute, atau yang biasa juga disebut state/properties/field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut. 

Method, atau yang biasa juga disebut behaviour merupakan bagian yang dimiliki oleh sebuah class yang dapat melakukan operasi, bertindak atau mengerjakan sesuatu.

Class, merupakan model yang berisi kumpulan attribute dan method dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh class manusia memiliki attribute berat, tinggi, usia kemudian memiliki method makan, minum, tidur. Method dalam sebuah class dapat merubah attribute yang dimiliki oleh class tersebut. Sebuah class merupakan dasar dari modularitas dan struktur dalam pemrograman berorientasi object. 

Object, merupakan perwujudan dari class, setiap object akan mempunyai attribute dan method yang dimiliki oleh class-nya, contohnya: amir, ahmad, yani merupakan object dari class manusia. Setiap object dapat berinteraksi dengan object lainnya meskipun berasal dari class yang berbeda.

Abstraction, adalah suatu cara untuk melihat suatu object dalam bentuk yang lebih sederhana. Sebagai contoh kita tidak melihat sebuah mobil sebagai ribuan komponen elektronik, sistem mekanik dengan empat buah ban, jok, stir kemudi dan sebagainya. Dengan Abstraction, suatu sistem yang kompleks dapat dipandang sebagai kumpulan subsistem-subsistem yang lebih sederhana, seperti halnya mobil merupakan suatu sistem yang terdiri atas berbagai subsistem, seperti subsistem kemudi, subsistem pengereman dan sebagainya.

Encapsulation, merupakan suatu mekanisme untuk menyembunyikan atau memproteksi suatu proses dari kemungkinan interferensi atau penyalahgunaan dari luar sistem dan sekaligus menyederhanakan penggunaan sistem tersebut.

Inheritance, merupakan konsep mewariskan attribute dan method yang dimiliki oleh sebuah class kepada class turunannya. Dengan konsep ini class yang dibuat cukup mendefinisikan attribute dan method yang spesifik didalamnya, sedangkan attribute dan method yang lebih umum akan didapatkan dari class yang menjadi induknya.

Polymorphism, merupakan konsep yang memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu object agar melakukan suatu tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda.

Berikut ini bahasa pemrograman yang mendukung OOP antara lain :

1.    Java
2.    Visual Basic
3.    Visual Foxpro
4.    C++
5.    PHP
6.    Python
7.    SIMULA
8.    Delphi
9.    Perl
10.  C#
11.  Smalltalk

Contoh Analoginya dalam mendefinisikan sebuah Laptop :

Class : Laptop
Object : Laptop Kantor

Attribute :
-  Warna Hitam List Merah
-  Merek Toshiba
-  Webcam
-  Tombol on/off
-  Keyboard
-  DVD RW
-  Tombol WIFI
-  LCD Monitor
-  Speaker Volume

Method :
-  Menyalakan Laptop
-  Mengetik dan membaca
-  Mendengarkan musik
-  Menonton Film
-  Internet dengan Wifi
-  Bermain Game
 
Dari contoh di atas, terdapat satu buah class Laptop dengan object Laptop Kantor. Object dalam class Laptop bisa dibuat lebih dari satu. Kita bisa membuat object Laptop Kantor, Laptop Saya, Laptop Riki, Laptop Purbadi, Laptop si Unyil, atau kembali ke Laptop Tukul. Banyak object yang dapat diciptakan dari satu kelas yang sama seperti halnya banyak Laptop yang dapat dibuat dari satu gambar rancangan yang sama.

Keuntungan OOP 

Pemrograman dengan OOP memiliki beberapa keuntungan atau kelebihan dari program linear diantaranya seperti :


- Lebih cepat.


Kita tidak perlu mengetikkan kode program untuk setiap object. Untuk membuat sebuah object anda hanya perlu memilih dan mengklik pilihan-pilihan yang telah disediakan.


- Resiko Kesalahan Kecil


Karena lebih sedikit anda mengetik, secara otomatis resiko kesalahan juga akan relative kecil, sintaks pemrograman juga tidak perlu dihafalkan lagi, karena semuanya sudah disediakan. Demikian juga waktu debugging akan terpotong sangat besarnya, karena setiap object tidak perlu di debug setiap kali digunakan.


- Daur Ulang


Setiap object dapat digunakan berulang-ulang dalam program yang sama maupun program yang berlainan. Dengan mudah object bisa digunakan berulang, dipanggil atau disisipkan dimana saja.


- Perawatan Lebih Mudah


Jika dahulu kita ingin mengubah sifat dari sebuah modul program tentunya kita juga harus mengubah seluruh program dan semua ikut dipengaruhi oleh modul program tersebut. Tetapi dalam OOP tidak perlu karena setiap object berdiri sendiri dan tidak perlu berhubungan dengan lingkungannya. Maka perubahan yang dilakukan pada object tersebut tidak atau mempengaruhi komponen lain dalam sistem yang ditempatinya.






FOLLOW and JOIN to Get Update!

Social Media Widget SM Widgets




Demo Blog NJW V2 Updated at: 10.11

0 comments:

Posting Komentar