TENTANG OOP


Pengertian

Object Oriented Programming atau yang lebih dikenal dengan OOP
adalah pemrograman yang menitikberatkan kepada objek-objek untuk menyelesaikan tugas atau proses dari program tersebut. Sedangkan penitikberatkan ini dimaksudkan adanya interaksi pengiriman nilai, pesan atau pernyataan antar objek. Kemudian objek yang merespon hasil dari interaksi tersebut akan membentuk suatu tindakan atau aksi (methode).

Class merupakan gambaran atau abstraksi karakter dan sifat dari suatu objek. Class juga dapat mendefinisikan ciri dan perilaku objek tersebut.

Object (objek) adalah suatu data atau entitas yang berwujud maupun tidak berwujud, memiliki sifat (karakteristik) tertentu sesuai dengan kondisi atau status dari penggunaannya. Data atau entitas di dalam pemrograman dapat disebut dengan blok fungsi.


Contoh pensil adalah suatu objek yang memiliki attribute (karakter) jenis, warna, panjang dan lain-lain.

File: Pensil.java

class Pensil {
//membuat attribut
String jenis,warna;
int panjang;
}
File: PensilBeraksi.java
public class SifatPensil {
public static void main(String[] args) {
// membuat objek
Pensil pensilku = new Pensil();
//memanggil attribut dan memberi nilai
pensilku.jenis=”Pensil 2B”;
pensilku.warna=”Hijau”;
pensilku.panjang=20;
System.out.println(“Jenis : “+pensilku.jenis);
System.out.println(“Warna : “+pensilku.warna);
System.out.println(“Panjang : “+pensilku.panjang+” cm”);
}
}
Pensil juga memiliki methode (perilaku) seperti diruncingkan, digunakan dan lain-lain.
File Pensil2.java
class Pensil2 {
//buat methode
void runcingPensil(){
System.out.println(“Runcingkan Pensil”);
}
void gunaPensil(){
System.out.println(“Menulis di atas kertas”);
}
void simpanPensil(){
System.out.println(“Simpan pensil di dalam tas”);
}
}
File: PensilBeraksi.java
public class PensilBeraksi {
public static void main(String[] args) {
// buat objek
Pensil2 pensilkuBeraksi = new Pensil2();
//panggil methode
pensilkuBeraksi.runcingPensil();
pensilkuBeraksi.gunaPensil();
pensilkuBeraksi.simpanPensil();
}
}


Keuntungan Penggunaan OOP

a. Natural
OOP dapat melakukan pendekatan terhadap objek yang menggambarkan segala sesuatu yang nyata, seperti sifat suatu benda maupun kegunaan dari benda tersebut.


b. Modular
Objek yang sudah dibentuk dapat dikelompokkan kembali dengan objek-objek yang lain, seperti kelompok alat tulis yang dapat dikelompokkan kembali dengan kelompok pensil, kelompok buku dan lain-lain.


c. Mudah diperbaharui
Dikarenakan sifat jangkauan dari objek memiliki bagian private dan public, maka jika bagian private ingin digunakan pada objek-objek lain dapat diperbaharui dengan menempatkan objek lain tersebut di bagian public.


d. Dapat didaur ulang
Suatu objek yang telah didefinisikan baik jenis, bentuk, ciri maupun perilaku dapat didefinisikan kembali dengan objek yang lain. Misalkan objek rumah yang memiliki ciri umum ada pintunya, jendelanya, atapnya, temboknya dan lian-lain, dapat didefinisikan kembali ciri-ciri tersebut dengan menyebutkan cirinya masing-masing seperti temboknya yang memiliki ciri jenisnya, ketebalannya, warna catnya dan lain-lain.

source: http://sdalis.wordpress.com/2008/12/22/tentang-oop/


1. OBJECT-ORIENTED PROGRAMMING (OOP)

Pemrograman berorientasi objek (OOP) merupakan metode yang paling populer dalam dunia rekayasa perangkat lunak saat ini. OOP membuat proses pengembangan perangkat lunak dapat dilakukan secara modular yang berarti sistem dapat dikembangkan tahap demi tahap tanpa mengubah (banyak) fondasi perangkat lunak yang sudah ada.

Object-Oriented Programming adalah sebuah pendekatan untuk pengembangan / development suatu software dimana dalam struktur software tersebut didasarkan kepada interaksi object dalam penyelesaian suatu proses/tugas. Interaksi tersebut mengambil form dari pesan-pesan dan mengirimkannya kembali antar object tersebut. Object akan merespon pesan tersebut menjadi sebuah tindakan /action atau metode. Jika kita mencoba melihat bagaimana tugas disekitar kita diselesaikan, kita akan mengetahui bahwa kita berinteraksi dalam sebuah object-oriented world. Jika akan bepergian kita pasti berinteraksi dengan object mobil. Sebagai sebuah object, mobil berisi object-object lain yang berinteraksi untuk melakukan tugasnya membawa kita.

Pemrograman Berbasis Obyek :
1. Fungsi dan data menjadi satu kesatuan yang disebut obyek
2. Obyek-obyek dalam OOP bersifat aktif
3.Cara pandang : program bukan urut-urutan instruksi tapi diselesaikan oleh obyek-obyek yang bekerjasama untuk menyelesaikan masalah

Karakteristik OOP
Suatu program disebut dengan pemrograman berbasis obyek (OOP) karena terdapat :
1.Encapsulation (pembungkusan)
2.Inheritance (pewarisan)
3.Polymorphism (polimorfisme – perbedaan bentuk)

2. Inheritance
Banyak objects diklasifikasikan menurut hirarki. Contoh, kamu dapat mengklasifikasikan sebuah mobil yang mempunyai karakteristik umumnya mobil, seperti mempunyai ban, mesin, serta body. Keturunan berikutnya diklasifikasikan dengan atribut umum seperti ukuran, jumlah roda, isi silinder dll atau mengklasifikasikan mereka atas dasar daya angkutnya. Contoh, ada kendaraan komersial atau kendaraan pribadi, ada truk atau mobil penumpang. Kamu menggunakan inheritance dalam OOP untuk mengklasifikasikan objects dalam program sesuai karakteristik umum dan fungsinya.

1.Sebuah class bisa mewariskan atribut dan method-nya ke class yang lain
2.Class yang mewarisi disebut superclass
3.Class yang diberi warisan disebut subclass
4.Sebuah subclass bisa mewariskan atau berlaku sebagai superclass bagi class yang lain => disebut multilevel inheritance.

Contoh Pewarisan

1.Class Nenek adalah superclass dari class Ibu
2.Class Ibu adalah superclass dari class Anak
3.Sebuah subclass memiliki beberapa kesamaan dengan superclass-nya, dalam hal atribut/variabel dan method yang dimilikinya
4.Contoh pewarisan yang lain : class kendaraan merupakan superclass bagi class mobil, truk dan bis

Keuntungan Penggunaan Pewarisan

1.Subclass memiliki atribut dan method yang spesifik yang membedakannya dengan superclass, meskipun keduanya mirip (dalam hal kesamaan atribut dan method)
2.Dengan demikian pada pembuatan subclass, programmer bisa menggunakan ulang source code dari superclass yang ada => ini yang disebut dengan istilah reuse.
3.Class-class yang didefinisikan dengan atribut dan method yang bersifat umum yang berlaku baik pada superclass maupun subclass disebut dengan abstract class


3. Polymorphism
Polymorphism adalah kemampuan 2 buah object yang berbeda untuk merespon pesan permintaan yang sama dalam suatu cara yang unik. Contoh, saya melatih anjing saya dengan perintah untuk menggonggong dan juga saya melatih burung untuk merespon perintah saya untuk berkicau. Saya lakukan latihan untuk merespon kepada mereka dengan perintah lisan. Melalui polymorphism saya tahu bahwa anjing dan burung akan merespon dengan gonggongan atau kicauan.

4. Encapsulation
Ciri penting lainnya dari OOP adalah encapsulation. Encapsulation adalah sebuah proses dimana tidak ada akses langsung ke data yang diberikan, bahkan hidden. Jika kamu ingin mendapat data, kamu harus berinteraksi dengan object yang bertanggung jawab atas dara tersebut. Dalam contoh inventory, jika kita ingin melihat atau mengupdate informasi atas produk, kita seharusnya bekerja melalui object produk. Untuk membaca data, kita mengirimkan pesan ke object produk, kemudian object produk akan membaca pesan dan mengirim pesan balik ke kamu.

1.Variabel dan method dalam suatu obyek dibungkus agar terlindungi
2.Untuk mengakses, variabel dan method yang sudah dibungkus tadi perlu interface
3.Setelah variabel dan method dibungkus, hak akses terhadapnya bisa ditentukan.
4.Konsep pembungkusan ini pada dasarnya merupakan perluasan dari tipe data struktur




Contoh Program
            Siapkan form berikut :
Form1 Caption : ”Selamat Datang”
Label1 Caption : ”Siapa Nama Anda”
Edit1 Text : ”” (kosong)
Button1 Caption : ”Ok”
Label2 Caption : ”” (kosong)

Skema Program :
Ketika mengklik Button1, Label2 caption nya akan terisi sesuai text yang kita inputkan di Edit1.

List Program :
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 Label2->Caption=Edit1->Text;
}

Maka Hasilnya :

Tidak ada komentar:

Posting Komentar