Minggu, 02 November 2014

AP3 OOP ( Object Oriented Programmed )

Object Oriented Programmed

Pada Kesempatan ini, Saya akan menjelaskan tentang Pemrogramman Berorientasi Objek atau yang lebih sering dikenal dengan Object Oriented Programming (OOP)

OOP itu sendiri merupakan salah satu paradigma pemrograman yang ditemukan pada sekitar tahun 1960 namun OOP ini baru dikembangkan pada awal tahun 1970 menggantikan teknik pemrograman yang berbasis prosedur dan sampai saat ini OOP adalah paradigma pemrograman yang sering digunakan atau yang paling populer.

OOP adalah teknik pemrograman dimana semua data dang fungsi nya dimasukkan kedalam class atau objek. Objek-objek inilah yang nantinya akan menerima pesan, memproses, mengirim, menyimpan, dan memanipulasi data. Bahkan beberapa objek dapat saling berinteraksi untuk saling memberikan informasi. Objek itu sendiri harus berisikan informasi tentang dirinya dan tentu saja seperti diatas untuk saling memberikan informasi maka setiap objek harus saling terhubung dengan objek yang lain.


berikut adalah istilah umum di OOP :


1. Attribut

Attribut adalah suatu variabel global yang dimiliki sebuah class. Attribut bisa juga disebut sebagai State / Properties / Field. Attribut itu sendiri merupakan suatu bagian dari class yang tidak bisa melakukan operasi tetapi akan dilakukan operasi terhadap Attribut sehingga nilai dari attribut dapat berubah ubah sesuai dengan operasi yang dilakukan terhadapnya.

Attribut itu sendiri memiliki 3 hak akses yaitu Public, Private, Protected. Jika Attribut dideklarasikan sebagai Public maka semua class akan dapat mengakses Attribut tersebut, Jika dinyatakan sebagai Private maka Attribut tersebut hanya dapat diakses oleh class itu sendiri, Dan jika Protected maka Attribut hanya bisa diakses oleh class itu sendiri dan class turunannya


2. Method

Method adalah sebuah fungsi atau prosedur yang dibuat oleh programmer didalam sebuah class. Method yang terdapat pada sebuah class hampir dengan fungsi atau prosedur pada pemrograman prosedural.

Sebuah method juga memiliki izin akses yang sama dengan Attribut yaitu public, private dan protected. Sebuah class dapat memiliki beberapa method jika parameter masukkan tidak ada yang sama sehingga ketika saat dicompile kompiler dapat mengetahui method manakah yang dipanggil

didalam sebuah class juga terdapat method statis yaitu method yang dapat berbagi akses dengan objek lain tanpa perlu membuat objek statis tadi atau tanpa perlu proses new, method statis ini sendiri mempunyai kelemahan yaitu hanya dapat mengakses method yang berada didalam class yang sama yang bersifat statis. method statis ini biasanya digunakan untuk method main


fungsi fungsi method adalah untuk merubah nilai attribut dari suatu objek, menerima informasi dari object lain, dan mengirim informasi ke objek lain untuk melakukan sebuah proses


3. Class

Class adalah sebuah model yang berisikan kumpulan dari attribute dan method di dalam suatu unit untuk suatu tujuan. Perbedaan suatu class dari sebuah struktur adalah class itu dapat berdiri sendiri dan digunakan untuk keperluan keperluan kelas lain sementara struktur tidak dapat berdiri sendiri


4. Objek

Objek adalah sebuah perwujudan dari suatu class dan setiap objek pasti memiliki sebuah attribut dan method yang dimiliki oleh classnya, meskipun berbeda class objek masih bisa saling berinteraksi dengan objek lainnya.

objek merupakan objek khusus yang mengakses anggota anggota yang berada di dalam objek tersebut baik itu attribut ataupun method. dan jika terdapat nama variabel yang sama dengan nama attribut di objek tersebut maka kita bisa menggunakan "this" yang berfungsi untuk merujuk kepada attribut objek

objek memiliki dua karakteristik yaitu attribut dan behavior berikut adalah contoh sederhana dari objek sepeda. Objek sepeda tersebut memiliki attribut pedal, jeruji, dan warna sementara behavior dari sepeda adalah kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda



OOP sendiri memiliki 4 konsep yaitu :


1. Abstraction

yaitu suatu cara untuk melihat suatu objek dalam bentuk yang lebih sederhana. Abstraksi itu sendiri merupakan sebuah kemampuan dari program untuk melewati  aspek aspek informasi yang diproses dan akan langsung memfokuskan kepada intinya. fungsi dan method sendiri dapat juga dibuat abstrak.


2. Encapsulation

adalah mekanisme yang berfungsi untuk menyembunyikan atau memproteksi sebuah proses sehingga proses tersebut tidak dapat di interfensi maupun penyalahgunaan dari luar sistem selain itu encapsulation juga bisa untuk menyederhanakan penggunaan sistem tersebut. interfensi yang dimaksud diatas adalah agar para pengguna sebuah objek mengganti keadaan dalam objek dengan cara yang salah sehingga bisa membuat program akan rusak, oleh karena itu encapsulation akan memastikan bahwa tidak akan ada interfensi agar program tersebut tidak rusak / error


3. Inheritance

adalah konsep yang digunakan untuk mewariskan attribut dan method kepada class turunanya sehingga class turunannya hanya akan mendeklarasikan attribut dan method yang lebih spesifikasi lalu untuk method dan attribut yang umum akan didapatkan dari class induknya


4. Polymorphism

adalah konsep dimana memungkinkan kita untuk menggunakan sebuah interface yang sama dalam memerintah suatu objek untuk melakukan tindakan yang prinsip nya sama tetapi jika kita lihat  bahwa secara proses nya berbeda. sebagai contoh jika kita memberi perintah kepada burung merpati dan kucing untuk pergi ke suatu daerah maka burung merpati akan mulai terbang sementar kucing akan lari ketempat yang kita perintahkan, ini menunjukkan bahwa walaupun pesan yang mereka terima sama tetapi mereka akan memproses nya berbeda maka contoh tersebut merupakan polymorphism.


Sumber