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.



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

Postingan populer dari blog ini

Definisi, Jenis dan Layanan OTT (Over The Top)

NETWORK LAYER