OOP (Object Oriented Programming)



OOP
(Object Oriented Programming)

Awal dikembangkannya computer, berkembang pula bahasa pemrograman yang digunakan. Bahasa Pemrograman adalah :
serangkaian instruksi atau perintah yang dimengerti oleh komputer, digunakan untuk melakukan tugas-tugas tertentu.

Bahasa pemrograman rata-rata merupakan berbasis teks.
Cara penulisan program dan eksekusi program diketik dan dilakukan dari atas ke bawah secara segaris (orientasinya linier), sehingga pemrograman ini disebut : Linear Programming
C/ : BASIC, Pascal, Cobol, C, Dbase

Setelah muncul sistem operasi windows ,
-      bahasa pemrog. Lebih ditekankan dalam hal tampilannya
-      sarana pengembangannya bersifat grafis sehingga user hanya menggeser gambar-gambar dengan mouse
-      Bahasa pemrog. Dinamai dengan kata ”visual” didepannya
C/ : Visual FoxPro, Visual Basic, Visual C++
-      Berorientasi pada objek-objek yang terpisah-pisah (object oriented) disebut juga dgn istilah Object Oriented Programming.


Sejarah OOP

Tahun 1960 ditemukan suatu pembuatan pogram yang terstruktur (structured Programming). Metode ini dikembangkan dari bahasa C dan Pascal.

Definisi OOP
Adalah suatu metode dalam pembuatan program, dengan tujuan untuk menyelesaikan kompleksnya berbagai masalah program yang terus meningkat.

C/ : sebuah departemen memiliki manager, sekretaris, petugas administrasi data dan lainnya. Bila manager tsb ingin memperoleh data dari bag. Administrasi maka manager tsb tidak harus mengambil langsung tetapi dapat menyuruh petugas admin untuk mengambilnya. Pada kasus tsb manager tidak harus mengetahui bagaimana cara mengambil data tsb tetapi manager bisa mendapatkan data tsb melalui objek petugas administrasi.

Objek dan Class

Ide dasar OOP adalah mengkombinasikan data dan fungsi untuk mengakses data menjadi sebuah kesatuan unit yang dikenal dengan nama objek.
Sebuah program dibagi menjadi bagian-bagian kecil yang disebut dgn objek, setiap objek memiliki entity yang terpisah dengan entity objek-objek lain dalam lingkungannya.

C/ objek : rumah, mobil, sepeda motor, gelas, komputer
Karakterisitik obyek : (penggambaran pemrograman berorientasi objek = penggambaran pada dunia nyata)
*      Setiap objek memiliki atribut sebagai status
*      Setiap objek memiliki tingkah laku (behavior)

C/ :  objek sepeda
                Memiliki atribut : pedal, roda jeruji, warna, jumlah roda, jok
                Memiliki tingkah laku : kecepatan menaik/menurun, perpindahan gigi sepeda

Class : kumpulan dari beberapa objek yang sama 

Setiap objek mengandung 3 hal utama yaitu :
1.       Property atau atribut
                Adalah karakteristik atau sifat dari sebuah objek.
                C/:   property warna utk teks adalah hitam, ukurannya 1x2 unit

2.       Metode
Adalah serangkaian prosedur yang dimiliki oleh suatu objek yang akan dijalankan sesuai dengan respon yang diberikan oleh suatu perintah/kejadian
C/ : objek tombol EXIT, untuk keluar dari aplikasi

3.       Event
    Adalah ”kejadian”  atau segala sesuatu yang dapat dialami  oleh sebuah objek.
C/ : meletakkan mouse di atas objek, mengklik tombol mouse kmd mengetik pada kotak             teks

Konsep dasar OOP

·   Encapsulation (Pengkapsulan)
Merupakan : kumpulan komponen program yang biasanya terdiri dari tipe data, konstanta, variabel, subprogram.

Encapsulation seringkali dianggap sebagai ”penyembunyian informasi”, dapat diartikan juga pengemasan data dan fungsi dalam wadah bernama objek. Konsep public dan private akan senantiasa dipakai dalam pengkapsulan. Encapsulation memastikan sebuah objek tidak dapat menggantikan keadaan dalam dari sebuah objek dengan cara yang tidak layak, hanya metode dalam objek tersebut yang diberi izin untuk mengakses keadaannya.

C/ :  jam tangan
Cara jam mencatat waktu dengan baik antara jam bertenaga baterai atau bertenaga gerak tidaklah penting kita ketahui

Contoh :
ketika kita menyalakan sebuah TV kita tidak tahu apa yang terjadi dengan proses dan percakapan antar alat yang berhubungan dengan TV tersebut sehingga mampu menampilkan sebuah gambar.

ketika melakukan klik pada subuah object dalam suatu aplikasi program kita tidak tahu apa yang dilakukan program sehingga ditampilkan hasil yang sesuai.

Catatan = dari dua contoh kasus tersebut terdapat kesamaan proses mengenai information hiding yang tidak diketahui oleh user sampai hasil ditampilkan.

·   Inheritance (Pewarisan/penurunan)
Merupakan : sifat dalam bahasa berorientasi objek yang memungkinkan sifat-sifat dari suatu kelas diturunkan ke kelas lain.


Class yang mewarisi : superclass
Class yang diwarisi   : subclass

Suatu class hanya boleh mempunyai satu superclass

C/ :
                                                                                Sepeda



 



Sepeda gunung                                   sepeda motor                                       sepeda balap


Inheritance berarti suatu komponen dalam satu program digunakan oleh program lain yang mempunyai hubungan khusus.

Contoh :
TV merupakan salah satu media elektronik yang dgunakan untuk menampilkan gambar dengan tujuan untuk memberikan informasi kepada konsumen. Secara umum TV memunyai cara kerja yang sama dengan media elektronik yang lain dlam proses penyampaian informasi, tetapi mempunyai sifat yang unik yang dapat membedakan dengan media electronik yang ada.

Dalam aplikasi program kita sering menggunakan command button, untuk beberapa perintah yang berbeda.


·   Polimorfisme
Merupakan : suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda. (menuju 1 tujuan dengan banyak cara)

Istilah ini berasal dari bahasa yunani, berarti ”mempunyai banyak bentuk”
C/ :      Bila sebuah burung menerima pesan ”gerak cepat”, dia akan menggerakkan sayapnya dan terbang
            Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari.
Keduanya menjawab pesan yg sama, namun yg sesuai dgn kemampuan hewan tersebut.

Contoh = TV dan radio adalah media electronik yang mempunyai system yang sama tentang bagaimana meyebarkan suatu informasi, tetapi cara kerja dari masing – masing sistem pasti berbeda.
Atau
Object Simpan dan Update adalah icon yang berasal dari induk yang sama yaitu, command button tetapi cara kerja tersebut berbeda – beda.

Cara kerja OOP

OOP memiliki sifat abstraksi, artinya pemakai tidak perlu mengetahui kerumitan  dari sebuah objek.  Pemakai hanya perlu mengetahui apa yang dilakukan oleh objek, bukan bagaimana cara objek tersebut melakukannya.

Keuntungan OOP
1.       lebih cepat
2.       resiko kesalahan kecil
3.       daur ulang
4.       perawatan lebih mudah

Bahasa pemrograman yang mendukung OOP adalah :
Java, C++, Pascal, Visual Basic NET, Simula, Smalltalk, Ruby, Python

JENIS-JENIS BINDING

2 jenis binding bila dilihat dari control yang digunakan untuk binding data :
  • Simple Binding
Binding data (pengikatan data terhadap property suatu control) yang dilakukan untuk menampilkan data “one record at a time”, jenis ini hanya menampilkan data dari satu kolom per record
C/ :  TextBox, Label

  • Complex Binding
Binding data yang dilakukan untuk menampilkan data “multiple record at a time”, jenis ini mampu menampilkan data sekaligus dari kolom dan record yang dipilih.
C/ : DataGrid, ListBox, ComboBox

2 jenis binding bila dilihat dari sisi waktu pengikatan data :
  • Early Binding
Binding yang dilakukan ketika design time

  • Late Binding
Binding yang dilakukan ketika run time

Komentar