OBJECT-ORIENTED PROGRAMMING (OOP)
Nama/NIM: Komang Devi Tripika Dewi/1404505083
Jurusan/Fakultas/Perguruan Tinggi: Teknologi Informasi/Teknik/Universitas UdayanaMata Kuliah : Pemograman Mobile (C)Dosen: I Putu Agus Eka Pratama, S.T., M.T.
Jurusan/Fakultas/Perguruan Tinggi: Teknologi Informasi/Teknik/Universitas UdayanaMata Kuliah : Pemograman Mobile (C)Dosen: I Putu Agus Eka Pratama, S.T., M.T.
OBJECT-ORIENTED PROGRAMMING (OOP)
1. Pengertian Object-Oriented
Programming (OOP)
Pemrograman berorientasi objek (OOP) merupakan metode yang
paling populer dalam dunia rekayasa perangkat lunak saat ini. OOP membuat
proses pengembangan perangkat lunak dapat dilakukan secara modular yang berarti
sistem dapat dikembangkan tahap demi tahap tanpa mengubah (banyak) fondasi perangkat
lunak yang sudah ada.
Object-Oriented Programming adalah sebuah pendekatan untuk
pengembangan / development suatu software dimana dalam struktur software
tersebut didasarkan kepada interaksi object dalam penyelesaian suatu
proses/tugas. Interaksi tersebut mengambil form dari pesan-pesan dan
mengirimkannya kembali antar object tersebut. Object akan merespon pesan
tersebut menjadi sebuah tindakan /action atau metode. Jika kita mencoba melihat
bagaimana tugas disekitar kita diselesaikan, kita akan mengetahui bahwa kita
berinteraksi dalam sebuah object-oriented world. Jika akan bepergian kita pasti
berinteraksi dengan object mobil. Sebagai sebuah object, mobil berisi
object-object lain yang berinteraksi untuk melakukan tugasnya membawa
kita.
Pemrograman
Berbasis Obyek
a. Fungsi dan data menjadi satu kesatuan
yang disebut obyek
b. Obyek-obyek dalam OOP bersifat
aktif
c. Cara pandang : program bukan
urut-urutan instruksi tapi diselesaikan oleh obyek-obyek yang bekerjasama untuk
menyelesaikan masalah
2. Karakteristik
OOP
Suatu program disebut dengan pemrograman berbasis obyek
(OOP) karena terdapat :
a. Inheritance (pewarisan)
Inheritance
(Pewarisan) merupakan salah satu dari tiga konsep dasar OOP. Konsep inheritance
ini mengadopsi dunia riil dimana suatu entitas/obyek dapat mempunyai
entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat mempunyai
class turunan. Suatu class yang mempunyai class turunan dinamakan parent class
atau base class. Sedangkan class turunan itu sendiri seringkali disebut
subclass atau child class. Dalam dunia riil, suatu entitas turunan dapat
mewarisi apa-apa yang dipunyai dari entitas induknya. Misalkan saja antara
entitas Bapak dan entitas Anak. Entitas anak dapat mewarisi apa-apa yang
dipunyai oleh entitas Bapaknya. Demikian juga dalam konsep inheritance, suatu
subclass dapat mewarisi apa-apa yang dipunyai oleh parent class. Inilah yang
terpenting dari konsep inheritance. Karena suatu subclass dapat mewarisi
apa-apa yang dipunyai oleh parent class-nya, maka member dari suatu subclass
adalah terdiri dari apa-apa yang ia punyai dan juga apa-apa yang ia warisi dari
class parent-nya. Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah
tidak lain hanya memperluas (extend) parent class-nya.
Banyak objects diklasifikasikan menurut hirarki. Contohnya
dapat mengklasifikasikan sebuah mobil yang mempunyai karakteristik umumnya
mobil, seperti mempunyai ban, mesin, serta body. Keturunan berikutnya
diklasifikasikan dengan atribut umum seperti ukuran, jumlah roda, isi silinder
dll atau mengklasifikasikan mereka atas dasar daya angkutnya. Contoh, ada
kendaraan komersial atau kendaraan pribadi, ada truk atau mobil penumpang.
Menggunakan inheritance dalam OOP untuk mengklasifikasikan objects dalam
program sesuai karakteristik umum dan fungsinya.
1.
Sebuah
class bisa mewariskan atribut dan method-nya ke class yang lain
2.
Class yang mewarisi disebut superclass
3.
Class yang diberi warisan disebut subclass
4.
Sebuah
subclass bisa mewariskan atau berlaku sebagai superclass bagi class yang lain
=> disebut multilevel inheritance.
Keuntungan Penggunaan Pewarisan
- Subclass memiliki atribut dan method yang spesifik yang membedakannya dengan superclass, meskipun keduanya mirip (dalam hal kesamaan atribut dan method)
- Dengan demikian pada pembuatan subclass, programmer bisa menggunakan ulang source code dari superclass yang ada => ini yang disebut dengan istilah reuse.
- Class-class yang didefinisikan dengan atribut dan method yang bersifat umum yang berlaku baik pada superclass maupun subclass disebut dengan abstract class.
b. Polymorphisms
Polymorphisms adalah kemampuan 2 buah object yang berbeda
untuk merespon pesan permintaan yang sama dalam suatu cara yang unik. Contoh,
saya melatih anjing saya dengan perintah untuk menggonggong dan juga saya
melatih burung untuk merespon perintah saya untuk berkicau. Saya lakukan
latihan untuk merespon kepada mereka dengan perintah lisan. Melalui polymorphism
saya tahu bahwa anjing dan burung akan merespon dengan gonggongan atau kicauan.
c. Encapsulation
Ciri penting lainnya dari OOP adalah encapsulation.
Encapsulation adalah sebuah proses dimana tidak ada akses langsung ke data yang
diberikan, bahkan hidden. Jika kamu ingin mendapat data, kamu harus
berinteraksi dengan object yang bertanggung jawab atas dara tersebut. Dalam
contoh inventory, jika kita ingin melihat atau mengupdate informasi atas
produk, kita seharusnya bekerja melalui object produk. Untuk membaca data, kita
mengirimkan pesan ke object produk, kemudian object produk akan membaca pesan
dan mengirim pesan balik ke kamu.
- Variabel dan method dalam suatu obyek dibungkus agar terlindungi
- Untuk mengakses, variabel dan method yang sudah dibungkus tadi perlu interface
- Setelah variabel dan method dibungkus, hak akses terhadapnya bisa ditentukan.
- Konsep pembungkusan ini pada dasarnya merupakan perluasan dari tipe data struktur
Dua hal dalam enkapsulasi:
- Information hiding
- Menyediakan perantara (method) untuk mengakses data
Sebelum memulai membangun sebuah
sistem programmer hendaknya terlebih dahulu memahami konsep dasar pemrograman
apakah termasuk Pemrograman terstruktur atau Pemrograman berorientasi objek.
Pemrograman
berorientasi Objek yang
dalam istilah Inggris disebut sebagai Object Oriented Programming (disingkat
OOP) adalah salah satu pendekatan pemrograman atau paradigma untuk pengembangan
/ development suatu perangkat lunak komputer dimana dalam struktur perangkat
lunak tersebut didasarkan kepada interaksi objek dalam penyelesaian suatu
proses.
3. OOP
dengan Procedural Programming
Selain menggunakan paradigma OOP, programer dapat menuliskan
struktur kode program yang baik dengan menggunakan Procedural
Programming, di mana programer membuat kode program dengan pendekatan
procedural dan bekerja dengan function/procedure di dalam
aplikasinya. Tetapi, tidak ada jawaban yang benar-benar tepat jika Anda diberi
pertanyaan: apakah sebaiknya menggunakan OOP atau Procedural Programming?
Karena jawabannya sangat relatif, terutama tergantung pada aplikasi yang ingin
Anda buat. Jika Anda mempertimbangkan pemeliharaan dan pengembangan aplikasi
yang efisien di masa yang akan datang, mungkin Anda dapat memilih pendekatan
OOP. Tetapi, jika aplikasi Anda merupakan program sederhana yang dapat dibuat
dengan mudah dan cepat dengan function/procedure, gunakanlah pendekatan
Procedural Programming. Semua itu juga tergantung pada Anda sebagai programer,
untuk memilih pendekatan yang cocok dan lebih baik bagi Anda dalam mengerjakan
sebuah aplikasi.
4. Apakah
VB6 menggunakan Konsep OOP ?
Pada Visual Basic 6.0 (dan Visual Basic versi sebelumnya),
banyak diperdebatkan apakah bahasa pemrograman Visual Basic termasuk sebagai
bahasa pemrograman berorientasi object ataukah tidak. Pada satu sisi, Visual
Basic 6.0 mendukung object dan interface, dan juga
mengimplementasikan class yang didefinisikan pada class module dan disimpan pada
file dengan ekstensi .cls. Bahkan implementasidrag and drop control yang
pasti dikenal oleh setiap programer Visual Basic merupakan contoh object yang
dapat di-reuse. Pada saat Anda meletakkan sebuah control, misalnya
sebuah command buttonpada form Visual Basic, Anda telah menciptakan
object baru yang memiliki members berupa property, method, dan events.
Visual Basic 6.0 juga mengenal keyword private, friend, public, dan static yang
digunakan untuk mengatur level akses dari elemen yang dideklarasikan. Tetapi,
pada sisi lain Visual Basic 6.0 dianggap tidak mengimplementasikan
inheritance dan hanya memiliki fitur object oriented yang terbatas.
Sebuah class pada Visual Basic 6.0 tidak mendukung untuk menurunkan property
dan function-nya pada class yang lain. Bagaimana dengan polymorphism?
Visual Basic 6.0mendukung polymorphism melalui interface pada ActiveX.
PadaComponent Object Model (COM) yang membentuk infrastruktur
spesifi kasi ActiveX, terdapat multiple interface yang
memungkinkan komponen software dikembangkan tanpa mengubah kode program yang
ada. Secara umum, OOP pada Visual Basic 6.0 lebih diimplementasikan pada user
interface dan kurang memberikan dukungan bagi programer untuk
mengimplementasikan OOP pada kode program. Paradigma ini yang kemudian diubah
pada generasi Visual Basic .NET.
5.
OBJECT-ORIENTED PROGRAMMING WITH
C
C# merupakan suatu bahasa program
yang menggunakan konsepObject Oriented Programing (OOP). OOP
merupakan pemrograman yang memposisikan semua bagian yang terlibat dalam
program adalah objek. Program dapat dibentuk dan dijalankan
melalui interaksi antara objek yang satu dengan objek yang lainnya.
Terdapat hal-hal yang sangat penting
dalam OOP, yaitu :
- Class, merupakan pengelompokkan. Misalnya mengelompokkan antara manusia, hewan dan tumbuhan dengan class-class yang berbeda.
- Object, merupakan isi dari suatu class yang memiliki ciri-ciri unik.Misalnya burung, kucing, sapi temasuk di dalam class hewan. Anggrek, mawar, dan melati termasuk dalam class tumbuhan.
- Property, merupakan perlengkapan yang dimiliki oleh sebuahobject. Misalnya sapi memiliki property berat, tinggi, warna kulit, dll. Fungsi property yaitu untuk menerangkan object secara jelas.
- Method, merupakan suatu aksi yang bisa dilakukan oleh suatuobject. Misalnya sapi dapat berjalan dan makan.
References :
henyny.blogspot.com/
www.materi-it.com
anitatiunlambanjarmasin.blogspot.com/
Komentar
Posting Komentar