Pemrograman visual adalah metode pembuatan program
dimana programmer membuat koneksi antara objek-objek dengan cara membuat
gambar, menunjuk, dan mengklik pada diagram dan ikon dan dengan berinteraksi
dengan diagram alur. Jadi, programmer bisa menciptakan program dengan cara
mengklik pada ikon yang mewakili rutin-rutin pemrograman secara umum. Dalam
pengeksekusian kode programnya, pemrograman visual merupakan konsep
event-driven, yaitu pengeksekusian yang didasarkan atas kejadian(event)
tertentu. Setiap kejadian tersebut mempunyai kode program sendiri yang disimpan
dalam sebuah fungsi. Berbeda dengan pemrograman terstruktur atau procedural
yang mengeksekusi kode-kode programnya mulai dari awal sampai akhir program
secara beruntun.
Dalam konsep suatu objek dikenali adanya dua komponen yaitu :
• Properties atau atribut, yang memiliki nilai dan nama.
• Event (function, method, action, behaviour) yang hanya memiliki nama.
Konsep event dalam sebuah objek dianggap sangat
penting karena objek tidak akan melakukan suatu action atau suatu kegiatan,
objek hanya akan diam jika tidak ada event yang diberikan. Seperti yang kita
ketahui objek hanyalah sebuah benda dan tak pernah melakukan sebuah action jika
tidak ada sebuah perintah untuk menggerakkannya.
Pengertian Object Oriented Programming (OOP)
Adalah suatu cara baru dalam berfikir serta berlogika dalam menghadapi masalah-masalah yang akan dicoba diatasi dengan bantuan komputer. OOP, tidak seperti Pemprograman Terstruktur yang mencoba melihat permasalahan lewat pengamatan dunia nyata dimana setiap objek adalah entitas tunggal yang memiliki kombinasi struktur data dan fungsi tertentu. Ini kontras dengan pemprograman terstruktur dimana struktur data dan fungsi didefinisikan secara terpisah dan tidak berhubungan secara erat.
Pengertian Object Oriented Programming (OOP)
Adalah suatu cara baru dalam berfikir serta berlogika dalam menghadapi masalah-masalah yang akan dicoba diatasi dengan bantuan komputer. OOP, tidak seperti Pemprograman Terstruktur yang mencoba melihat permasalahan lewat pengamatan dunia nyata dimana setiap objek adalah entitas tunggal yang memiliki kombinasi struktur data dan fungsi tertentu. Ini kontras dengan pemprograman terstruktur dimana struktur data dan fungsi didefinisikan secara terpisah dan tidak berhubungan secara erat.
Pemrograman orientasi-objek menekankan konsep berikut:
·
Kelas - Kumpulan
atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan
tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas
definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam
perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan
struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal
sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan
domain permasalahan yang ada dan kode yang terdapat dalam sebuah class
sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut
digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah
program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan
melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari
masalah ke sebuah program ataupun sebaliknya.
·
Objek - Membungkus
data dan fungsi menjadi suatu unit dalam sebuah program komputer; objek
merupakan dasar dari modularitas dan struktur dalam sebuah program komputer
berorientasi objek.
·
Abstraksi -
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.
·
Enkapsulasi -
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari
sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut
yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface
yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek
lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek
tersebut.
·
Polimorfisme -
Melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa
orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan
sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut
dikirim. Contohnya, bila sebuah burung menerima pesan "gerak cepat",
dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan
yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan
yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut
polimorfisme karena sebuah variabel tungal dalam program dapat memegang
berbagai jenis objek yang berbeda selagi program berjalan, dan teks program
yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda
dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang
mencapai polimorfisme melalui penggunaan fungsi kelas-pertama.
·
Inheritas -
Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan
dan diciptakan dengan jenis khusus dari objek yang sudah ada. Objek-objek ini
dapat membagi (dan memperluas) perilaku mereka tanpa harus mengimplementasi
ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki
inheritas.)
·
Dengan menggunakan
OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana
cara menyelesaikan suatu masalah tersebut (terstruktur) tetapi objek-objek apa
yang dapat melakukan pemecahan masalah tersebut. Sebagai contoh anggap kita
memiliki sebuah departemen yang memiliki manager, sekretaris, petugas
administrasi data dan lainnya. Seperti manager tersebut ingin memperoleh data
dari bag administrasi maka manager tersebut tidak harus mengambilnya langsung
tetapi dapat menyuruh petugas bag administrasi untuk mengambilnya. Pada kasus
tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data
tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas
administrasi. Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar
objek-objek yang ada karena setiap objek memiliki deskripsi tugasnya sendiri.
Konsep OOP Pada
Pemrograman Visual
Bagaimana OOP bekerja : Objek, Pesan, dan Method Pemrograman berorientasi objek terdiri atas komponen-komponen berikut :
Bagaimana OOP bekerja : Objek, Pesan, dan Method Pemrograman berorientasi objek terdiri atas komponen-komponen berikut :
1.
Apa itu OOP :
dalam pemrograman berorientasi objek, data dan instruksi untuk pemrosesan di
mana data dikombinasikan menjadi “objek” yang cukup memadai bisa digunakan pada
program lain. Hal terpenting disini adalah objek.
2.
Apa itu “objek” :
objek adalah modul self-contained yang terdiri dari kode pemrogaman yang telah
disusun sebelumnya. Modul memuat atau mengkapsulasi baik (1) cabang data,
maupun (2) instruksi pemrosesan yang bisa dilakukan pada data tersebut.
3.
Kapan objek data
akan diproses – mengirim “message”: setelah objek menjadi bagian dari suatu
program, instruksi tertentu diaktivasi hanya ketika “message” yang terkait
sudah dikirimkan. Message adalah pengiriman peringatan kepada objek ketika
operasi yang harus melibatkan objek tertentu dilakukan.
4.
Bagaimana data
objek diproses – “method”: message cukup mengidentifikasi operasinya. Bagaimana
sebenarnya hal itu dilakukan akan disertakan didalam instruksi pemrosesan yang
menjadi bagian dari objek. Instruksi pemrosesan ini dinamakan method.
Menggunakan kembali blok kode program setelah anda
menuliskan satu blok kode program, kode tersebut dapat digunakan kembali pada
program-program lain. Jadi, dengan OOP-tidak seperti pemrograman
tradisional-anda tidak perlu memulai dari awal.
Dibandingkan dengan pemrogaman tradisional,
mempelajari pemrogaman berorintasi objek memakan waktu yang lebih lama karena
seperti berpikir dengan cara yang baru. Sekalipun demikian, OOP memilliki
keunggulan yaitu objek bisa digunakan berulang-ulang pada aplikasi yang berbeda
dan oleh programmer yang berbeda, karena itu waktu pengembanganya pun lebih
cepat dan biaya pun bisa berkurang.
Pemrograman berorientasi objek memiliki tiga konsep
dasar yang penting, yaitu enkapsulasi, pewarisan, dan polimorfisme.
1.
Enkapsulasi,
berarti objek memuat (1) data dan (2) instruksi pemrosesan yang relevan.
Setelah objek dibuat, objek dapat digunakan kembali untuk program lain.
Penggunaan sebuah objek bisa dijabarkan melalui konsep kelas dan pewarisan.
2.
Pewarisan, setelah
menciptakan sebuah objek. Kita dapat menggunakannya sebagai fondasi untuk objek
yang sama yang memilliki perilaku atau karakteristik sama. Semua objek berasal
dari atau yang saling berhubungan bisa membentuk suatu kelas. Masing-masing
kelas memuat instruksi khusus (method) yang unik untuk kelompok tersebut.
Kelas bisa diatur dalam hierarki-kelas atau subkelas. Pewarisan adalah metode untuk mewariskan ciri dari suatu objek dari kelas ke subkelas dalam hierarki. Jadi objek yang baru dapat diciptakan dengan mewariskan ciri dari kelas yang sudah ada.
Kelas bisa diatur dalam hierarki-kelas atau subkelas. Pewarisan adalah metode untuk mewariskan ciri dari suatu objek dari kelas ke subkelas dalam hierarki. Jadi objek yang baru dapat diciptakan dengan mewariskan ciri dari kelas yang sudah ada.
3.
Polimorfisme,
berarti “banyak bentuk” . Dalam pemrograman berorientasi objek, polimorfisme
berarti sebuah pesan (permintaan yang sudah digeneralisasi) memberikan hasil
yang berbeda berdasarkan objek yang dikirimkan.
Polimorfisme sangat berguna karena programmer dapat membuat prosedur mengenai objek yang jenisnya tidak diketahui sebelumnya, namun akan diketahui saat program dijalankan di komputer.
Polimorfisme sangat berguna karena programmer dapat membuat prosedur mengenai objek yang jenisnya tidak diketahui sebelumnya, namun akan diketahui saat program dijalankan di komputer.
Dari konsep diatas, dapat disimpulkan bahwa terdapat
hubungan yang jelas antara OOP dengan pemrograman visual. Pemrograman
berorientasi objek berperan dalam pendefinisian rutin-rutin pemrograman
sedangkan pemrograman visual mendefinisikan secara visual bagaimana programmer
atau user menjalankan program tersebut sehingga tampilan nyata yang ada pada
program tersebut dapat kita ketahui. Dan ini sangat membantu dan memudahkan
programmer dalam pembuatan program dan juga memungkinkan pengguna untuk lebih
fokus pada pemecahan masalah daripada cara menangani bahasa pemrograman atau
tidak perlu mendalami sintaks atau menulis kode. Selain itu dengan adanya
konsep OOP ini kita cukup mendefinisikan event-event yang akan terjadi pada
objek tersebut. Jadi,dalam pembuatan suatu program atau aplikasi yang berbasis
visual kita cukup dimudahkan dengan objek-objek yang telah tersedia tersebut.
Dengan kata lain adanya pemrograman visual ini cukup membantu dalam pembuatan
program aplikasi dengan mendukung konsep object oriented programming.
Contoh dari penerapan konsep OOP adalah membuat sebuah
aplikasi sederhana dengan mengunakan Borland C++ Builder karena tinggal
menggunakan objek-objek yang telah disediakan sesuai kebutuhan kita. Misalnya
form, label, edit, button, dan lain-lain. Objek-objek tersebut nantinya akan
dapat bekerja sesuai dengan fungsinya tergantung event yang kita berikan. Yang
menjadi objek dalam hal ini adalah form, label, edit, button atau objek lain
yang kita tambahkan pada aplikasi yang kita buat.