Minggu, 15 September 2013
Rabu, 04 September 2013
Ciri-Ciri Pemrograman Berorientasi Objek (OOP)
Object Oriented Programming (OOP) adalah suatu pemprograman yang
berorientasi objek. Ciri-ciri atau karakteristik pemrograman berorientasi
objek, antara lain :
1. Abstraksi (abstraction)
2. Pembungkusan (encapsulation)
3. Pewarisan (inheritance)
4. Polimorfisme (polymorphism)
Ciri-ciri pemprograman java tersebut merupakan dasar-dasar dari
konsep yang terkandung dalam pemrograman java itu sendiri.
Enkapsulasi
Enkapsulasi adalah suatu mekanisme untuk menyembunyikan atau
memproteksi suatu proses dari kemungkinan interferensi atau penyalahgunaan dari
luar sistem sekaligus menyederhanakan penggunaan system itu sendiri. Akses
ke internal sistem diatur sedemikian rupa melalui seperangkat interface. Contoh
kasus sepeda motor tadi, pada sistem pemindahan gigi transmisi, maka pengendara
tidak perlu tahu detail dari bagaimana proses pemindahan gigi itu dilakukan
oleh mesin, cukup tahu bagaimana menekan gigi transmisi itu. Pedal gigi transmisi
yang diinjak pengendara itu merupakan interface (antar muka) pengendara dengan
sistem transmisi sepeda motor.
Dalam bahasa Java segala sesuatu adalah objek (everything is
object). Setiap baris program yang ditulis programmer adalah merupakan
bagian dari sebuah objek. Programmer juga dapat membangun sebuah objek yang
disusun oleh objek-objek kecil, dimana masing-masing objek yang menyusunnya
memiliki fungsi sendiri-sendiri.
Inheritance
Sebagai manusia kita sebenarnya terbiasa untuk melihat objek yang
berada disekitar kita tersusun secara hierarki berdasarkan class-nya
masing-masing. Dari sini kemudian timbul suatu konsep tentang pewarisan yang
merupakan suatu proses dimana suatu class diturunkan dari class lainnya
sehingga ia mendapatkkan cirri atau sifat dari class tersebut.
Dari hirarki diatas dapat dilihat bahwa, semakin kebawah, class
akan semakin bersifat spesifik. Class mamalia memiliki seluruh sifat yang
dimiliki oleh binatang, demikian halnya juga Anjing, kucing dan Monyet memiliki
seluruh sifat yang diturunkan dari class mamalia. Dengan konsep ini,
karakteristik yang dimiliki oleh class binatang cukup didefinisikan
didefinisikan dalam class binatang saja. Class mamalia tidak perlu
mendefinisikan ulang apa yang telah dimiliki oleh class binatang, karena
sebagai class turunannya, ia akan mendapatkan karakteristik dari class binatang
secara otomatis. Demikian juga dengan class anjing, kucing dan monyet, hanya
perlu mendefinisikan karakteristik yang spesifik dimiliki oleh class-nya
masing-masing. Dengan memanfaatkan konsep pewarisan ini dalam pemrograman, maka
hanya perlu mendefinisikan karakteristik yang lebih umum akan didapatkan dari
class darimana ia diturunkan.
Polymorphism
Polymorphism berasal dari bahasa Yunani yang berarti banyak
bentuk. Dalam PBO, konsep ini memungkinkan digunakannya suatu interface yang
sama untuk memerintah objek agar melakukan aksi atau tindakan yang mungkin
secara prinsip sama namun secara proses berbeda. Dalam konsep yang lebih umum
sering kali polymorphism disebut dalam istilah satu interface banyak aksi.
Contoh yang konkrit dalam dunia nyata yaitu mobil. Mobil yang ada dipasaran
terdiri atas berbagai tipe dan berbagai merk, namun semuanya memiliki interface
kemudi yang sama, seperti: stir, tongkat transmisi, pedal gas dan rem. Jika
seseorang dapat mengemudikan satu jenis mobil saja dari satu merk tertentu,
maka orang itu akan dapat mengemudikan hamper semua jenis mobil yang ada,
karena semua mobil tersebut menggunakan interface yang sama. Harus diperhatikan
disini bahwa interface yang sama tidak berarti cara kerjanya juga sama. Missal
pedal gas, jika ditekan maka kecepatan mobil akan meningkat, tapi bagaiman
proses peningkatan kecepatan ini dapat berbeda-beda untuk setiap jenis mobil.
Posted by Tifani Purwanita Agustrina at 11:47 AM
Pemrograman Prosedural Vs OOP
Pemrograman Prosedural
Algoritma pada pemrograman procedural berisi langkah-langkah atau tahapan kegiatan tentang penyelesaian suatu masalah dimana program dipecah menjadi beberapa modul yang diistilahkan dengan modular (procedural). Program dibedakan antara bagian data dan bagian instruksi. Bagian instruksi akan dilaksanakan secara berurutan oleh pemrosesan, beberapa instruksi menentukan instruksi berikutnya yang akan dieksekusi (percabangan kondisional). Kemudian, data yang disimpan dalam memori dimanipulasi secara berurutan (procedural). Konsep pemrogramannya yaitu flow programming yang dieksekusi mulai baris awal perintah sampai baris akhir. Pada konsep ini, antara data (varibel, konstanta, dll) dan metode (fungsi dan prosedur) akan dipandang secara terpisah.
Algoritma pada pemrograman procedural berisi langkah-langkah atau tahapan kegiatan tentang penyelesaian suatu masalah dimana program dipecah menjadi beberapa modul yang diistilahkan dengan modular (procedural). Program dibedakan antara bagian data dan bagian instruksi. Bagian instruksi akan dilaksanakan secara berurutan oleh pemrosesan, beberapa instruksi menentukan instruksi berikutnya yang akan dieksekusi (percabangan kondisional). Kemudian, data yang disimpan dalam memori dimanipulasi secara berurutan (procedural). Konsep pemrogramannya yaitu flow programming yang dieksekusi mulai baris awal perintah sampai baris akhir. Pada konsep ini, antara data (varibel, konstanta, dll) dan metode (fungsi dan prosedur) akan dipandang secara terpisah.
•
Pemrograman Berorientasi Objek -Object Oriented Programming- (Java)
Obyek (object) yang dimaksud dalam Object Oriented Programming (OOP) yaitu kumpulan elemen-elemen dalam suatu program dan hubungan yang terjadi antar elemen tersebut. OOP merupakan perkembangan dari paradigma pemrograman procedural yang dibuat untuk mengatasi kesulitan yang ada pada pemrograman procedural.
OOP merupakan paradigma yang berbeda dengan pemrograman prosedural. Pada pemrograman prosedural, data (variabel, konstanta, dll), metode (prosedur dan fungsi) dan hubungan satu dengan lainnya dipandang secara terpisah, sedangkan pada OOP elemen-elemen serta hubungannya dikemas atau dikelompokkan dalam suatu modul yang dinamakan kelas (class). Kelas inilah yang digunakan untuk membangun atau membentuk obyek.
Dalam OOP juga terdapat langkah-langkah dalam penyelesaian masalah, diantarnya yaitu:
- Langkah pengkombinasian data dan berbagai metode yang berhubungan dengannya. Hasil kombinasinya disebut sebagai obyek (object) yang merupakan tipe data baru.
- Membentuk obyek baru yang memiliki sifat sama atau mirip dengan obyek yang sudah ada sebelumnya (pewarisan). Obyek turunan juga dapat membetuk obyek turunan lagi dan seterusnya, dimana setiap perubahan pada obyek induk, juga akan mengubah obyek turunannya.
- Object yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.
Obyek (object) yang dimaksud dalam Object Oriented Programming (OOP) yaitu kumpulan elemen-elemen dalam suatu program dan hubungan yang terjadi antar elemen tersebut. OOP merupakan perkembangan dari paradigma pemrograman procedural yang dibuat untuk mengatasi kesulitan yang ada pada pemrograman procedural.
OOP merupakan paradigma yang berbeda dengan pemrograman prosedural. Pada pemrograman prosedural, data (variabel, konstanta, dll), metode (prosedur dan fungsi) dan hubungan satu dengan lainnya dipandang secara terpisah, sedangkan pada OOP elemen-elemen serta hubungannya dikemas atau dikelompokkan dalam suatu modul yang dinamakan kelas (class). Kelas inilah yang digunakan untuk membangun atau membentuk obyek.
Dalam OOP juga terdapat langkah-langkah dalam penyelesaian masalah, diantarnya yaitu:
- Langkah pengkombinasian data dan berbagai metode yang berhubungan dengannya. Hasil kombinasinya disebut sebagai obyek (object) yang merupakan tipe data baru.
- Membentuk obyek baru yang memiliki sifat sama atau mirip dengan obyek yang sudah ada sebelumnya (pewarisan). Obyek turunan juga dapat membetuk obyek turunan lagi dan seterusnya, dimana setiap perubahan pada obyek induk, juga akan mengubah obyek turunannya.
- Object yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.
Berikut ini adalah perbandingan antara Pemrograman prosedural dibandingkan dengan Pemrograman berorientasi objek ( OOP ):
No. Prosedural
|
No. OOP
|
||
Fokus utama pada fungsi dan prosedur yang beroperasi pada data
|
Menekankan pada ata yang sedang beroperasi dan Petidak fungsi atau prosedur
|
||
Program besar terbagi dalam program unit kecil yang disebut fungsi
|
Program dibagi ke dalam apa yang disebut objek
| ||
Data bebas bergerak di sekitar sistem dari satu fungsi lain |
Data tersembunyi dan tidak dapat diakses oleh fungsi eksternal
|
||
Data bersifat pasif
| Objek-objek dalam OOP bersifat aktif | ||
Program desain dengan penndekatan "Top Down" yaitu tugas-tugas kempleks dipecah menjadi bagian yang lebih kecil, sampai sub-tugas tersebut mudah diimplementasikan
| Program desain pendekatan "Buttom Up" yaitu memuat prosedur-prosedur menyelesaikan tugas-tugas yang sederhana, kemudian menggabungkan prosedur-prosedur tersebut dalam prosedur yang lebih kompleks, sampai fungsionalitas yang ingin tercapai | ||
Sumber : http://eskun.blogspot.com/2013/04/perbedaan-antara-program-prosedural.html
Selasa, 03 September 2013
Sejarah Singkat OOP
Object-Oriented Programming (OOP)
adalah sebuah pendekatan untuk pengembangan suatu software
dimana dalam struktur software
tersebut didasarkan kepada interaksi
object dalam penyelesaian suatu
proses/tugas.
Konsep OOP dimulai pertengahan 1960-an
dengan sebuah bahasa
program SIMULA kemudian dilanjutkan di
era 70-an dengan
SMALLTALK. Meskipun developer software
tidak secara intensif
mengembangkan OOP, tetapi metodologi
object-oriented tetap digunakan.
Pada pertengahan 80-an, bahasa OOP
seperti C++ dan Eifle menjadi
popular diantara programmer computer.
Popularitas OOP berlanjut pada
tahun 90-an, banyak pengembang
software menggunakan konsep OOP
seperti Java dll. Di tahun 2002, versi
terakhir dari Visual Studio, Microsoft
memperkenalkan bahasa OOP baru yaitu
C# (dibaca C-sharp) serta upgrade
Visual Basic, dan ini merupakan sebuah
bahasa OOP sesungguhnya.
Langganan:
Postingan (Atom)