Minggu, 06 Juni 2010

Pengujian Object Oriented

Object-Oriented Programming pada VFP Object-Oriented Programming (OOP) mengubah hampir setiap aspek di dalam membangun suatu aplikasi dengan menggunakan Visual FoxPro, dimulai dari fase analisis dan desain lalu ke fase pembuatan kode kemudian pengujian aplikasi beserta komponen-komponen dari aplikasi tersebut. Programming berorientasi objek didesain untuk menyediakan hal-hal seperti berikut :

- Kemampuan untuk penggunaan kembali kode-kode yang telah dibuat sebelumnya.

- Kemampuan untuk memelihara kode-kode yang ada lebih baik dan mudah.

Sekarang, sebagaimana telah kita ketahui mengenai OOP, berikut ini merupakan gambaran mengenai konsep yang membentuk Orientasi Objek. Objek dan Enkapsulasi Jika kita pernah membaca dari suatu buku atau artikel mengenai Orientasi Objek, kita mungkin pernah mengetahui beberapa syarat yang menjelaskan bagaimana objek tersebut menjelaskan dirinya sendiri.

Syarat-sarat tersebut adalah Inheritance, Encapsulation, dan Polymorphism yang digunakan untuk mengekspresikan konsep OOP. Hal ini adalah persyaratan yang harus dipenuhi. Kunci pertama dan sangat penting mengenai konsep OOP adalah Objek. Suatu Objek adalah sebuah paket informasi dan aksi. Sebuah objek juga berdiri sendiri atau melengkapi dirinya sendiri.

Objek bersisi hal-hal atau bermacam-macam di dalamnya, seperti karakteristik yang dapat terlihat, bagaimana melakukan sesuatu.

Contohnya pada saat kita menggunakan Lift di dalam suatu gedung bertingkat. Lift merupakan suatu objek ynag memiliki property (seperti Berat Maximum ), melakukan sesuatu (seperti membuka dan menutup pintu), dan memiliki tampilan seperti tombol control untuk berinteraksi dengan lift tersebut.

Dalam peristilahan berorientasi objek, kata objek dapat pula digunakan untuk menggambarkan sesuatu yang khusus, seperti kartu absensi amano tanggal 16 Februari milik Yayan. Objek juga berbuat sesuatu (seperti lift). Hardi si tukang kayu membuat meja, atau lembar catatan waktu diisi, disahkan, dan diserahkan untuk tujuan pembayaran gaji.

Jadi, kunci untuk dapat mengerti tentang objek adalah bagaimana kita membayangkannya seperti Lift, Hardi, atau Yayan .

Pada saat kita membayangkan sebuah lift, semua yang kita bayangkan adalah tampilannya (Public Interface-nya): seperti Tombol, yang memberitahukan lift ke lantai mana yang ia harus tuju, dan juga seperti pintu dimana kita dapat keluar masuk lift, dan seterusnya.

Bagamanapun juga masih ada beberapa hal di dalam lift tersebut yang tidak pernah dibayangkan oleh kita.

Contohnya, mungkin kita tidak mengetahui bagaimana lift tersebut menginterpretasikan / meneterjemahkan tombol yang kita tekan untuk menuju tujuan kita atau bagaimana lift tersebut membuka pada salah satu lantai. Dan, biasanya kita tidak terlalu memikirkannya. Fungsi-fungsi ini, walaupun merupakan bagian dari lift yang sangat penting, kita tidak memperhatikannya.

Hal-hal tersebut di atas memperkenalkan beberapa konsep.

Pertama, semua hal yang telah diketahui oleh objeknya, dan lingkungan dari sebuah objek yang juga berisi objek-objek. Hal ini kita sebut Enkapsulasi (Encapsulation). Objek mengerti apa yang diperlukan untuk mengetahui apa yang akan dilakukan dan bagaimana melakukan sesuatu tanpa menyandarkan dirinya sendiri ke lingkungan di luar objek tersebut. Jadi data dan lingkungannya di-enkapsulasi di dalam objeknya.

Properties Data di dalam objek disebut juga sebagai sebuah Property. Sebuah Property (pada Visual FoxPro) sebenarnya adalah sebuah variable memori sederhana yang dilekatkan didalam badan objek tersebut. Kita dapat memberikan suatu nilai dan memodifikasinya dengan menggunakan nama objeknya dengan diikuti sebuah tanda titik (.) dan kemudian diikuti oleh nama property-nya. (Untuk suatu record, property-propertinya juga disebut sebagai member variables didalam beberapa text.)

Properti-propertinya dapat memiliki beberapa tipe data yang valid(sah) untuk Visual FoxPro memory variable lama yang sederhana.

Sebagai catatan : Sebuah property akan selalu ada selama objek tersebut ada.

Contoh, jika kita mempunyai sebuah properti bernama Namanya yang dilekatkan/ditempatkan ke dalam suatu objek yang namanya Orang_Itu, kita dapat meminta nilai dari propertinya dengan menguraikannya sebagai berikut :

Orang_Itu.Namanya && Objek: Orang_itu,

Properti:Namanya (Perintah tersebut akan menampilkan nama orang tersebut) Methods Disamping memiliki data, objek memiliki aksi untuk dilakukan.

Aksi-aksi ini dikodekan di dalam prosedur-prosedur yang telah dilekatkan di dalam objek tersebut Prosedur-prosedur ini dikenal sebagai Methods.

Ada perbedaan antara prosedur dan method yaitu pada bagaimana caranya dipanggil. Anda memanggil sebuah method dengan cara menuliskan nama dari objeknya diikuti tanda titik (.) dan kemudian diikuti oleh nama method-nya.

Sebagai contoh, baris perintah berikut mengilustrasikan bagaimana memanggil sebuah method yang namanya Print yang dilekatkan pada objek bernama DaftarNama : DaftarNama.Print()

Secara tehnik, tanda kurung pada bagian akhir nama method hanya berlaku jika kita mengharapkan suatu nilai balik atau jika kita memasukan parameter ke dalam method. Walaupun kita tidak mengharapkan nilai balik saya menganjurkan agar kita selalu menggunakan tanda kurung untuk konsistensi. Hal ini juga menjelaskan bahwa kita memanggil sebuah method. Disamping itu perlu diperhatikan, bagaimana method ini dipanggil. Tidak seperti Visual FoxPro prosedur dan User-Defined Functions (UDF), kita tidak harus menggunaka tipe sintaks DO atau menetapkan fungsi dengan sebuah ekspresi. Untuk memanggil method yang merupakan sebuah prosedur (asumsikan kita tidak menginginkan nilai balik), yang harus kita lakukan adalah memanggil method tersebut seperti yang telah ditunjukan pada contoh sebelumnya. Jika kita mengharapkan suatu nilai balik, kita dapat menggunakan tipe sintaks UDF lama.

Sebagai contoh, jika method Print menghasilkan suatu nilai logical apakah Customer dicetak sebagaimana semestinya, kita dapat menangkap/mengambil nilainya dengan :

ReturnValue = oCust.Print() Events Events adalah sesuatu yang terjadi.

Sebagai contoh, pada saat kita melakukan click mouse merupakan suatu event. Event dapat pula disebabkan oleh aksi dari user (seperti click mouse) atau dari sistem itu sendiri (seperti tampilan ketika terjadi kesalahan). Pada saat kita membuat sebuah Class (seperti sebuah PushButton) pada Visual FoxPro, kita dapat menempatkan Code (seperti Method-method) ke dalam sebuah event. Ketika event terjadi (Contoh: User melakukan click kiri pada mouse pada objek pushbutton), method yang terhubung (yaitu method click) secara otomatis dipanggil.

sumber :adykusnan.site90.com