Sabtu, 18 Februari 2012

Pemrograman Berorientasi Obyek - PBO

Faisal Nobel :


Pengantar Pemrograman Berorientasi Obyek
(OOP – Object Oriented Programming) 
Pemrograman Berorientasi Obyek (PBO)
Tujuan :  
a.       mempelajari konsep dasar dan teknik pembuatan program dengan pendekatan  Obyek.
b.      mempelajari penulisan obyek dalam salah satu bahasa pemrograman berorientasi obyek menggunakan pemrograman  c++
 Materi :
1.      Konsep structure dalam pendekatan OOP
2.   Konsep dasar pemrograman berorientasi obyek (obyek oriented programming)
3.      Pengantar bahasa pemrograman c++
4.      Oop dengan enkapsulasi
5.      Oop dengan hubungan antar obyek client suplier
6.      Pewarisan (inheritance)
7.      Polimorfisme dan Generalitas
 Konsep Dasar Pemrograman Berorientasi Obyek
·        Adalah suatu teknik atau cara pendekatan baru dalam melihat permasalahan dari sistem (sistem perangkat lunak, sistem informasi atau sistem yang lain).
·        Pendekatan berorientasi obyek akan memandang sistem yang akan dikembangkan sebagai suatu kumpulan obyek yang berkorespondensi dengan obyek-obyek dunia nyata.
·        Ada banyak cara untuk mengabstraksikan dan memodelkan obyek-obyek tersebut, mulai dari abstraksi obyek, kelas, hubungan antar kelas sampai abstraksi sistem.
·        Saat mengabstraksikan dan memodelkan obyek ini, data dan proses-proses yang dipunyai oleh obyek akan dienkapsulasi (dibungkus) menjadi satu kesatuan.
 Contoh :
Tinjau aktifitas kuliah pada suatu sistem akademik. Dari aktifitas kuliah tersebut secara eksplisit ada 3 obyek yang langsung dapat dikenali yaitu : Dosen yang memberikan kuliah, Mahasiswa yang mengikuti kuliah, dan Materi kuliah yang disampaikan. Secara implisit ada 2 obyek lain yang dapat dikenali yaitu : Jadwal kapan kuliah akan diadakan dan Nilai yang didapat mahasiswa dari mata kuliah yang sudah diikutinya. Abstraksi dan pemodelan untuk salah satu dari kelima obyek tersebut, misalnya untuk obyek Dosen adalah : diabstraksikan menjadi Kelas Dosen terdiri dari atribut : Kode Dosen, Nama Dosen dan Pendidikan, yang mempunyai operasi : rekam, update, retrieve dll.
 ·        Dalam rekayasa perangkat lunak konsep pendekatan berorientasi obyek dapat diterapkan pada tahap analisis, perancangan, pemrograman dan pengujian perangkat lunak.
·        Ada berbagai teknik ynag dapat digunakan pada masing-masing tahap tersebut, dengan aturan dan alat bantu pemodelan tertentu.
 Obyek
·        Adalah abstraksi dari sesuatu yang mewakili dunia nyata seperti : benda, manusia, satuan organisasi, tempat, kejadian, struktur, status atau hal-hal yang bersifat abstrak.
·        Suatu entitas yang mampu menyimpan informasi (status) dan mempunyai operasi (kelakuan) yang dapat diterapkan atau dapat berpengaruh pada status obyek.
·        Dalam konteks Oop, obyek adalah instansiasi (yang dibentuk secara seketika) dari kelas pada saat eksekusi.
·        Obyek mempunyai siklus hidup : diciptakan, dimanipulasi, dan dihancurkan.
 Kelas
·        Adalah kumpulan dari obyek-obyek dengan karakteristik yang  sama.
·        Adalah definis statik dari himpunan obyek yang sama yang mungkin lahir atau diciptakan dari kelas tersebut.
·        Sebuah kelas akan mempunyai sifat (atribut) , kelakuan (operasi), hubungan (relationsip) dan arti.
·        Suatu kelas dapat diturunkan dari kelas yang lain, dimana atribut dari kelas semula dapat diwariskan ke kelas yang baru.
 Property Obyek
Atribut
·        Nilai atau elemen-elemen data yang dimiliki oleh obyek dalam kelas obyek.
·        Merupakan ciri dari sebuah obyek.
·        Dipunyai secara individual oleh sebuah obyek

Layanan (Service)
·        Metode atau operasi yang berfungsi untuk memanipulasi obyek itu sendiri
·        Fungsi atau transformasi yang dapat dilakukan terhadap obyek atau dilakukan oleh obyek.
·        Dapat berasal dari : model obyek, event, aktifitas atau aksi keadaan, fungsi, kelakuan dunia nyata.
 Klasifikasi Obyek
Menurut [BOO95] obyek dapat dibedakan menjadi :
·        ADT (abstract data type) definisi dari kelas dimana komponen type menjadi atribut dan fungsi primitif menjadi operasi/metode/layanan.
·        Mesin, obyek pasif yang punya status yang akan diaktifkan oleh obyek lain, fungsi primitigf pada mesin merupakan mekanisme transisi yang mengubah suatu status ke status lain.
·        Proses, obyek aktif yang mempunyai urutan kendali (thread of control).


 Karakteristik Program Berorientasi Obyek
Sistem Berorientasi Obyek
·        Sebuah program yang dibangun dengan berdasarkan metode berorientasi obyek adalah sebuah sistem yang komponennya dibungkus (dienkapsulasi) menjadi kelompok data dan fungsi.
·        Setiap komponen dalam sistem tersebut dapat mewarisi atribut dan sifat dari komponen lainnya, dan dapat berinteraksi satu sama lainnya.
 Karekteristik atau sifat-sifat yang dipunyai sebuah sistem berorientasi obyek adalah :
·        Abstraksi,
prinsip untuk merepresentasikan dunia nyata yang komplek menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan.
·        Enkapsulasi,
pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai obyek, untuk menyembunyikan implementasi dari obyek sehingga obyek lain tidak mengetahui cara kerjanya.
·        Pewarisan (inheritance),
mekanisme yang memungkinkan suatu obyek (kelas) mewarisi sebagian atau seluruh definisi dari obyek lain sebagai bagian dari dirinya.
·        Reusability,
pemanfaatan kembali obyek yang sudah didefinisikan untuk suatu permasalahan pada permasalahan lainnya yang melibatkan obyek tersebut.
·        Generalisasi dan spesialisasi,
menunjukan hubungan antara kelas dan obyek yang umum dengan kelas dan obyek yang khusus.
·        Komunikasi antar obyek,
dapat dilakukan lewat pesan (message) yang dikirim dari satu obyek ke obyek lainnya.
·        Polymorphism,
kemampuan suatu obyek untuk digunakan dibanyak tujuan yang berbeda dengan nama yang sama sehingga dapat menghemat pemakaian baris program.

Ingin lebih lengkapnya silahkan klick disini ,,,
 ingin mendapatkan lebih banyak materi pelajaran silahkan masuk disini. terimakasih.

Tidak ada komentar: