Mempelajari Algoritma Pemrograman Berorientasi Objek dikenal OOP



OOP --- Pengertian dari OOP yaitu merupakan singkatan dari Object Oriented Programing atau dalam bahasa Indonesia yaitu Pemrograman yang berorientasi Objek. OOP sering kita dengar dalam dunia pemrograman dan IT karena Orientasi Objek ini penting dalam pemrograman, entah apapun bahasa pemrogramannya, biasanya mempunyai suatu aplikasi yang membantu dalam pembuatan aplikasi yang berorientasi objek. Nah, dalam artikel kali ini kita akan membahas tentang hal tersebut, yaitu 

  • apa pengertian dari OOP? 
  • seperti apa model dan contoh OOP? 
  • bagaimana membuat program yang berorientasi objek?
Pertama yang kita bahas yaitu pengertian Object Oriented Programing OOP. saya kutip dari wikipedia.com yaitu :

Pengertian OOP
Pemrograman berorientasi objek merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur.

dalam pengertiannya, objek menjadi kata utama sehingga perlu kita ketahui apa itu objek? 

Objek
Secara spesifik objek adalah sesuatu paket yang merupakan kumpulan data dan method (perilaku)
Data dapat diartikan sebagai sesuatu yg menentukan karakteristik sebuah objek, sedangkan method diartikan sebagai aksi terhadap data.

Sebagai contoh, objek manusia memiliki data-data seperti: tinggi badan, berat badan, warna kulit dsb. Sedangkan perilaku yang dimiliki manusia misalnya cara berjalan, cara bicara dan sebagainya.

Object Oriented Programing
Dalam pemrograman, data-data di dalam objek akan direpresentasikan dengan variabel atau  konstanta, sedangkan perilaku akan direpresentasikan dengan prosedur atau fungsi, yang kemudian disebut dengan method.

 Ilustrasi tersebut digambarkan sebagai berikut:


Istilah yg masih berkaitan erat dengan objek adalah kelas. Kelas merupakan struktur umum dari objek-objek tertentu. Misal saya, anda dan yangg lainnya adalah objek, yg termasuk dalam kelas manusia.

Istilah objek dan kelas adalah dua hal yg berbeda.
Dalam bahasa pemrograman, sering dikatakan bahwa objek merupakan instansiasi dari sebuah kelas.
Instansiasi merupakan wujud nyata dari suatu objek.

Sebagai contoh: jika terdapat objek manusia, maka udin, amir dan ali adalah instance dari objek manusia. dianalogikan juga bahwa tipe data adalah kelas, sedangkan var yg didefinisikan berdasarkan tipe data tersbt adalah objek.sebagai contoh jika:
x : integer;  
berarti objek x adalah instance dari kelas integer.

Menciptakan Kelas dan Objek
Untuk mendeklarasikan kelas digunakan kata kunci objek, dgn sintaks sebagai berikut:


Parameter nama kelas adalah nama yg diberikan untuk kelas.Aturan pemberian nama kelas sama dgn aturan pemberian identifier.

Diketahui bahwa data dlm kelas adalah var, sedangkan metod dlm kelas adalah prosedur atau fungsi. Maka deklarasi data dan method dpt dilakukan sama seperti deklarasi var, prosedu da function biasa. Contoh deklarasi kelas untuk menyimpan kordinat titik di layar.



Anda bisa menginstansiasi objek dari kelas titik dgn :


pengaksesan data dari objek A dilakukan melalui operator dot (.), sebagai contoh:

Kalau ditambahkan beberapa metod pada kelas titik diatas menjadi sebagai berikut:


Kelas titik mempunyai 2 data yaitu (x dan y) serta 2 metod yaitu (setx dan getx). Metod setx digunakan untuk mengeset nilai dari data x, sedangkan metod getx mengambil nilai dari data x.

Pendefinisian metod setx dan getx, biasanya dituliskan sebelum program utama. Contoh:


Cara memanggil metod suatu kelas sama seperti mengakses data dari suatu kelas, yaitu menggunakan operator dot (.), contoh:
A.setx (1);
writeln (A.getx);

Konsep Dasar OOP
Untuk memahami konsep dasar OOP, ada beberapa konsep dan ciri-ciri atau karakteristik dari OOP, yaitu: Abstraksi, Pembungkusan, Pewarisan dan Polimorfisme. 

1. Abstraksi (Abstraction)
Abstraksi merupakan ciri yang paling mendasar dari OOP. Konsep abstraksi merupakan suatu proses penyembunyian kerumitan (pengabstrakan) yang terjadi dalam suatu objek, sehingga pengguna objek tidak perlu untuk mengetahui detil proses yang dilakukan.

Contoh :

Pada pemrograman, ciri abstraksi ini diimplementasikan dengan adanya objek abstrak atau kelas abtsrak. Objek abstrak adalah objek yang tidak dapat di instansiasi sehingga objek ini tidak memiliki instance.

2. Pembungkusan (Encapsulation)
Pembungkusan berarti data-data dan method dibungkus menjadi paket objek menjadi satu kesatuan sehingga dapat berkerja sama dalam melaksanakan tugas-tugas pemrograman tertentu.

Dalam bahasa pemrograman yang tidak mendukung OOP (misal bahasa C), variabel dan konstanta tidak dapat dikumpulkan dengan fungsi/tugas tertentu, sehingga dalam bahasa C tidak dikenal adanya objek. Ilustrasi tersebut digambarkan sebagai berikut:


3. Pewarisan (inheritance)
Sebuah objek dapat diturunkan menjadi objek baru lainnya sehingga objek baru tersebut akan mewarisi sifat dan objek induknya, Konsep inilah yang dinamakan pewarisan (inheritance). 
Konsep pewarisan digambarkan sbb:


Relasi/hubungan antar objek dasar atau objek induk dengan objek – objek turunannya disebut dengan hierarki objek.

4. Polimorfisme/Kebanyakrupaan (Ploymorphism)
Polimorfisme merupakan kegiatan mengungkap beberapa hal  yang berbeda melalui suatu hal sama.
Misal :


jika terdapat 5 orang (objek manusia) yang belum diketahui status dari masing-masing individu tersebut, apakah tentara atau mahasiswa. 




Mendeklarasikan Objek
Berikut ini bentuk umum untuk mendeklarasikan objek dalam bahasa pascal, yaitu:

Sedangkan bentuk umum untuk mengimplementasikan method yang dideklarasikan dalam objek adalah sebagai berikut, untuk method yang berupa prosedur,


Apabila method berupa fungsi, maka bentuk umumnya menjadi seperti berikut:


Nama objek yang terdapat di depan nama method pada saat implementasi menandakan bahwa method tersebut adalah milik dari objek yang bersangkuatan. Sebagai contoh, disini kita akan mendefenisikan sebuah objek dengan nama Ttitik yang memiliki data x dan y serta dua buah method, yaitu setKoordinat dan GetKoordinat. Berikut ini kode programnya.

Type
TTitik = Object
x,  y : real ;
procedure Setkoordinat (absis, ordinat:  real ) ;
procedure Getkoordinat (var absis, ordinat:  real ) ;
end;
( bagian Implementasi )
procedure Ttitik.SetKoordinat (absis, ordinat:  real ) ;
begin
x :=  absis ;
y :=  ordinat ;
end ;
procedure Ttitik.GetKoordinat ( var absis, ordinat :  real ) ;
begin
absis    := x ;
ordinat := y ;
end ;
(program utama )
begin
…………
end.

Dari kode diatas terlihat bahwa method SetKoordinat dan GetKoordinat merupakan milik dari objek Ttitik sehingga pada saat implementasi kita harus menuliskannya seperti berikut.

procedure Ttitik.SetKoordinat ( absis, ordinat :  real);

procedure Ttitik.GetKoordinat ( var absis, ordinat :  real ) ;

Untuk mengakses data atau method yang terdapat dalam sebuah objek adalah sama seperti pada saat kita mengakses field dalam sebuah record, yaitu dengan menggunakan operator titik, perhatika contoh berikut ini.


Untuk lebih mengetahui dan membuktikan hal diatas, perhatikan contoh program berikut ini.

var
A: Ttitik;
Bil1, bil2:  real;
{ Program utama }
begin
Clrscr;
{ mengeset nilai x dan y}
A. SetKoordinat (5.0, 3.0 );

{mengambilkan nilai x dan y serta menyimpannya ke dalam variable bil1 dan bil2}
A. GetKoordinat (bil1, bil2);

{ menampilkan nilai x dan y yang tersimpan di dalam instance A}
Writeln ( 'Nilai x di dalam A               : ', BIL1 :0:2);
Writeln ( 'Nilai y di dalam A               : ', BIL2 :0:2);
readln;
end.

Layout:

Sekian Pembahasan Pemrograman Berorientasi Objek. Semoga Bermanfaat.


Bagikan ke:

Facebook Google+ Twitter

No comments:

Post a Comment

Silahkan isi komentar, jika ada yang ingin ditanyakan...