Pages

Ads 468x60px

Rabu, 25 April 2012

KONSEP OOP (OBJECT ORIENTED PROGRAMMING) DALAM PEMROGRAMAN VISUAL BASIC

Prinsip utama OOP adalah memperlakukan masing-masing bagian dari sebuah aplikasi sebagai object. Berbeda dengan Procedural Programming, di mana sebuah aplikasi terdiri kumpulan function dan instruksi. Masing-masing object pada OOP dapat menerima pesan, memproses data, dan mengirim pesan pada object lainnya, serta dapat dilihat sebagai sebuah item yang berdiri sendiri dengan tanggung jawab dan aturan tertentu. Pada sebuah object, tidak perlu mengetahui bagaimana object itu bekerja. Kita hanya perlu mengetahui apa yang dilakukan object tersebut. Terdapat banyak contoh untuk menjelaskan konsep OOP, hal yang umum diberikan adalah contoh pada dunia nyata. Misalnya sebuah mobil, seekor anjing, ataupun makhluk dan benda lain yang dapat mewakili sebuah object.
            Konsep Object Oriented  sebenarnya bukanlah barang baru dalam dunia bahasa pemrograman. Konsep ini sudah lama ada dimulai dari bahasa pemrograman Small Talk, LISP, C ++, dan beberapa bahasa pemrograman lainnya.
            Pemrograman Object Oriented dimaksudkan adalah membuat suatu program yang terdiri dari berbagai object yang saling berinteraksi (dalam beberapa buku diartikan dengan bertukar pesan antar object). Kenapa kita menggunakan pemrograman berbasis object, sementara kita masih bisa menggunakan konsep pemrograman prosedural? Dalam membangun program yang masih sederhana tentunya konsep object oriented ini akan terasa sangat menyusahkan, akan tetapi ketika kita membuat sebuah program yang ruang lingkupnya luas konsep object oriented akan terasa sangat membantu karena akan terasa lebih mudah untuk mengorganisir program yang telah kita buat.
            Dalam konsep object oriented akan kita temukan kata object dan class, class merupakan pola / template yang menggambarkan  kumpulan object yang mempunyai sifat yang sama, perilaku, atau disebut dengan himpunan object sejenis. Sementara object adalah implementasi dari class. Sebagai contoh : dalam pembangunan suatu gedung tentunya seorang arsitek akan menggunakan gambar desain gedung, dan kemudian akan dibuat gedung nyatanya. Dalam contoh ini gambar desain gedung dapat kita kategorikan sebagai class dan gedung nyatanya sebagai implementasi dari gambar gedung  yang dapat kita kategorikan sebagai object. Dari suatu class dapat dibuat beberapa object yang sama.
Object itu secara mudahnya dapat dikatakan terdiri dari property dan method..
Konsep object oriented memiliki karakteristik utama yaitu :
  1. Enkapsulasi, sebuah prinsip yang digunakan ketika membangun struktur program secara keseluruhan yang mana setiap komponen dari program dibungkus, pembungkusan properti dan operasi dalam satu even. Secara simple dapat kita katakan bahwa kita menyembunyikan keruwetan kode-kode program dalam suatu object.J
  2. Polimorphism, suatu kondisi dimana dua object atau lebih mempunyai antarmuka yang identik namun mempunyai perilaku berbeda.
  3. Inheritance (pewarisan), merupakan sarana untuk menghilangkan penulisan ulang terhadap kode yang dapat digunakan berulang kali yang didasarkan pada hubungan relasional hirarki. 
OOP pada Visual Basic 6.0
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 didefi nisikan pada class module dan disimpan pada file dengan ekstensi .cls. Bahkan implementasi drag 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 button pada 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 fi tur 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.0 mendukung polymorphism melalui interface pada ActiveX. Pada Component 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.
OOP pada Visual Basic .NET
Perdebatan apakah Visual Basic merupakan bahasa pemrograman berorientasi object ataukah tidak, berakhir pada saat dirilisnya Visual Studio .NET dan generasi seterusnya. Pada .NET, Visual Basic murni merupakan bahasa pemrograman berorientasi object. Kegunaan OOP yang utama adalah memaksimalkan penggunaan kembali kode program (code reuse). Saat  melakukan drag and drop, prosesnya dikerjakan oleh control designer sehingga tidak perlu mengetahui bagaimana object itu bekerja. Bahkan bebas menggunakan sebanyak mungkin control dan memodifi kasi warna, bentuk, judul, bahkan event handling dari object. Dasar dari tipe sistem .NET adalah inheritance, yang tidak ditemui dalam Visual Basic sebelumnya. Contoh implementasi inheritance pada .NET adalah namespace, .NET mengenal enam tipe kategori yang dapat didefinisikan pada namespace.
Contoh Demo Program Sederhana Menggunakan Konsep Oop Pada Visual Basic.Net
1.      Program menunjukan hari
a)         Script
Deklarasi Kelas Day
Public Class Day
    Sub GetDay()
        MessageBox.Show(Now)
    End Sub
End Class
Deklarasi Form
Public Class Form1
    Public hari As New Day
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim tgl As Date
        tgl = DateTimePicker1.Value
        MessageBox.Show(tgl)
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        hari.GetDay()
    End Sub

    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Me.Close()
    End Sub
End Class
b)        Hasil

Tidak ada komentar:

Posting Komentar