Selasa, 22 Februari 2011

RESUME PBO

Pemrogaraman Berorientasi Objek atau OOP (Object-Oriented Programming) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.

* Konsep dasar dari pemrograman berorientasi objek, meliputi :

1. Abstraksi
Abstraksi adalah kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari “pelaku” abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.

2. Objek dan Kelas
A.Objek
Obyek adalah sesuatu berupa konsep (concept), benda (thing), dan sesuatu yang membedakannya dengan lingkungan.
Secara sederhana obyek adalah mobil, manusia, alarm dan lain-lainnya. Obyek dapat pula merupakan sesuatu yang abstrak yang hidup didalam sistem seperti tabel, database, event, system messages. Obyek dikenali dari keadaannya dan juga operasinya.
contoh:
Sebuah mobil dikenali dari warnanya, bentuknya, sedangkan manusia dari suaranya.

B.Kelas
Kelas adalah sesuatu yang merupakan cetak-biru (blue-print) untuk suatu object ; mendefinisikan informasi apa yang dimiliki suatu object serta mendefinisikan perilaku yang dimilikinya.
Contoh :
Teman-teman Rina 1 kampus, dapat dikelompokkan menjadi suatu kelas yang disebut mahasiswi.

3. Enkapsulasi
Enkapsulasi merujuk pada sebuah objek yang menyembunyikan atau mengenkapsulasi atribut-atributnya terhadap operasi yang dikenakan (analoginya objek tersimpan dan terkunci dalam sebuah kapsul, dan operasi berada di tepian luar kapsul tersebut). Atribut yang tersembunyi ini disebut dengan private. Beberapa bahasa pemograman (sebagai contoh, Smalltalk) secara otomatis membuat atribut-atributnya sebagai private dan beberapa tidak (sebagai contoh,Java) membiarkan programmernya menentukan sendiri.
Contoh I :
Sebagai contoh mengapa enkapsulasi adalah sebuah ide yang bagus?
Bayangkanlah sebuah objek selalu menjaga kesopanan antara satu objek terhadap objek lainnya. Sebagai contoh, jika Anda hendak meminjam uang dari teman kita untuk membeli makanan di sebuah warung makan, Anda pastinya tidak akan serta-merta mengambil dompet teman Anda dan langsung melihat isi uang yang ada dalam dompet tersebut, apakah dompet itu berisi uang yang cukup untuk dipinjamkan kepada kita atau tidak. Sebaliknya, Anda hanya akan menanyakan apakah dia dapat meminjamkan Anda sejumlah uang dan mereka sendiri-lah yang akan melihat ke dalam dompet mereka dan memberikan uang tersebut kepada kita.
Contoh II :
•    Pada dunia nyata, seorang ibu rumah tangga menanak nasi dengan menggunakan rice cooker, ibu tersebut menggunakannya hanya dengan menekan tombol tanpa harus tahu bagaimana proses itu sebenarnya terjadi.
•    Disini terdapat penyembunyian informasi milik rice cooker, sehingga tidak perlu diketahui seorang ibu.
•    Dengan demikian menanak nasi oleh si ibu menjadi sesuatu yang menjadi dasar bagi konsep information hiding

4. Pesan
Object bekerjasama membentuk suatu sistem yang saling berkomunikasi untuk menjalankan sistem tersebut, dalam sebuah program objek-object berkomunikasi satu sama lain dengan mengirimkan pesan.
Sebagai contoh :
Jika sebuah objek ingin memanggil metode dari objek lain maka objek ini akan mengirimkan sebuah pesan yang meminta objek tujuan untuk menjalankan metode yang dikehandaki.
Sebuah pesan dibentuk oleh informasi berikut :
a. objek yang dituju
b. nama metode yang ingin dipanggil
c. parameter yang dibutuhkan metode tersebut.

5. Pewarisan (Inheritance)
Pewarisan mengijinkan kita untuk menspesifikasikan atau mengkhususkan bahwa sebuah kelas bisa memiliki atau mendapatkan beberapa karakteristik dari kelas induknya (parent class) dan menambahkan fitur atau kegunaan khusus atas dirinya sendiri. Kelas anak (subclass) mewariskan (inherits) semua fields, messages, dan methods dari kelas induk utama (superclass). Pewarisan menjadikan kelas dapat di-grupkan atau dikelompokkan ke dalam kelas yang lebih general (umum), oleh sebab itu pewarisan sering disebut juga sebagai bentuk spesialisasi atau generalisasi atas objek.
Dalam perspektif pemograman, kita memerlukan pewarisan karena:
•    Pewarisan mendukung perluasan dan kekuatan yang lebih dalam proses pemodelan perangkat lunak.
•    Pewarisan mengijinkan kita untuk mendefenisikan informasi atau atribut dan kelakuan (behavior) pada sebuah kelas dan membagikannya (share) kepada kelas anak (subclass) yang berhubungan. Ini berarti kita akan memiliki code yang lebih efisien.dan reuseable.
•    Pewarisan merupakan hal yang natural, yang gampang dimengerti dan didefenisikan dalam kehidupan nyata.
Contoh :
•    Beberapa buah mobil yang mempunyai kegunaan yang berbeda-beda.
•    Ada mobil bak terbuka seperti truk, bak tertutup seperti sedan dan minibus.
•    Walaupun demikian obyek-obyek ini memiliki kesamaan yaitu teridentifikasi sebagai obyek mobil, obyek ini dapat dikatakan sebagai obyek induk (parent).
•    Sedangkan minibus dikatakan sebagai obyek anak (child), hal ini juga berarti semua operasi yang berlaku 
pada mobil berlaku juga pada minibus.

6. Polimorphisme (Polymorphism)
Konsep dari polimorfisme adalah dimana polimorfisme memiliki arti ‘banyak bentuk/rupa’ yang merujuk pada suatu kemungkinan bahwa pesan yang disampaikan kepada objek-objek yang berbeda, namun pada prinsipnya adalah sama dan mendapatkan tanggapan yang berbeda-beda.
Objek yang menerima pesan memiliki tanggung jawab untuk memberikan respon atau tanggapan terhadap pesan yang diterimanya. Dalam pemograman berorientasi objek, polimorfisme memiliki arti dan fungsi yang sama, namun memiliki perilaku yang berbeda pada setiap kelas-kelas yang berbeda.
Contoh :
Seorang ibu memberikan pesan yang sama kepada anak-anaknya, “Sekarang waktunya makan !”. Pesan yang berupa perintah tersebut akan memberi makna yang berbeda pada setiap anak-anaknya, dan setiap anak akan memberikan tanggapan yang berbeda-beda. Seorang anak yang berumur 1 tahun akan duduk diam menunggu ibunya menyiapkan makanan dan menyuapkan makanan tersebut ke dalam mulutnya, sedangkan untuk anak yang berumur 16 tahun akan langsung duduk di meja makan langsung mengambil makanannya sendiri dan memakannya tanpa harus menunggu dan duduk diam berharap ibunya menyuapkan makanan ke dalam mulutnya.

0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More