Welcome to ariffantasi blog, enjoy reading.

[Tutorial] VB 2005 Express Edition: Asas Orientasi Objek

Pengenalan Bahasa Berorientasi Objek

Kita  seringkali  mendengar   ramai  bercakap mengenai  bahasa berorientasikan objek (Object  Oriented)   tetapi   sebagai  orang biasa,   kita  sering pening  kepala apa  yang hebat   sangat  berkenaan objek   yang diperkatakan  tersebut.   Ramai  dikalangan  kita agak keliru dan masih  tertanya-tanya  tentang konsep dan kepentingan objek dalam sesebuah   perisian. Dalam  artikel   ini,   kita   akan  mengupas   dengan   sebaik  mungkin tentang   apakah   objek   yang   digunakan   pada   sesebuah   perisian   serta   bagaimana konsep ini digunakan dalam pengaturcaraan Visual BASIC 2008 Express. Sebelum itu, mari kita lihat pada contoh yang lebih mudah iaitu objek dalam kehidupan yang  sebenar.  Cuba anda perhatikan disekeliling anda,   sudah pastinya anda boleh mengenalpasti segala objek berdekatan anda contohnya meja, kerusi, kasut, pakaian, pencetak, pen, radio, kereta, televisyen dan berjuta-juta  objek lain. Secara perbandingan kedua-dua konsep objek sebenar dan juga objek dalam perisian adalah 99.99% agak sama. Cuba anda pegang satu objek berdekatan anda misalnya sebatang pen dan tanyakan diri anda soalan-soalan ini:
(a) apakah sifat objek ini?
(b) apakah yang ia boleh buat?
Anda mungkin menjawab objek berkenaan adalah sebatang pen yang memiliki  sifat-sifat atau cirri-ciri  tertentu dan kegunaannya untuk menulis dan melukis.  Mungkin bagi sesetengah orang, soalan pertama merujuk kepada ‘keadaan’ pen dan soalan kedua merujuk kepada ‘perlakuan’ atau ‘cara’ ia digunakan. Dalam Visual  BASIC 2008  Express   Edition dan  juga  lain-lain bahasa pengaturcaraan, ianya dinamakan sebagai:
(a) Properties.
(b) Methods.

Dalam dunia sebenar, cuba anda perhatikan set televisyen dalam ruang tamu rumah anda dan fikirkan ianya sebagai sebuah Object. Apakah Properties yang ada pada set televisyen berkenaan dan apakah pula Methods yang ia ada.

Persoalan tentang apakah yang menyebabkan sesuatu kod itu menjadi  OOP  (Object Oriented Programming)? Terdapat  3 perkara yang menjadi   tulang belakang kenapa sesuatu kod adalah berorientasikan objek.

1. Inheritance

Jika sebuah kilang membuat televisyen mengilang televisyen mengikut model-model tertentu yang memiliki ciri-ciri standard model berkenaan, dalam Visual BASIC 2008 Express Editions pula spesifikasi  ini dinamakan sebagai  Class. Class akan mengarah program supaya membina salinan yang sama yang sudah pastinya akan mewarisi segala sifat-sifat yang asal.
Seperti mana model televisyen yang mungkin boleh diubahsuai dengan menambah fungsi-fungsi   baru   kepada model terkini dengan menggunakan salinan asal televisyen berkenaan, Class  juga boleh diubahsuai  dengan konsep yang sama. Ia boleh memiliki ciri-ciri asal Object dan penambahan Object baru boleh dilakukan.

2. Polymorphism

Sebuah set televisyen akan menyiarkan perkara berbeza bergantung kepada dari mana input saluran   diterima sama ada dari stesen Satelit, pemain DVD, dan sebagainya. Begitu juga halnya dengan konsep bahawa Object akan melakukan perkara berbeza bergantung kepada input yang diterima. Input   berbeza akan menghasilkan keputusan yang berbeza.

3. Encapsulation

Sebagai penonton televisyen, anda pastinya tidak kisah dan tidak mahu ambil peduli bagaimana interaksi berlaku antara pemain DVD dan televisyen anda. Paling penting, anda boleh menonton rangkaian kegemaran anda. Begitu juga dengan onsep sama diterapkan dalam OOP iaitu anda hanya mahukan kerja selesai dengan  sempurna dan anda boleh mengawal  proses  yang ada. Sifat ini dapat eringkaskan sebarang proses yang terlibat. Faedah menggunakan OOP  ini  kurang dihargai  oleh mereka yang baru mempelajari sesuatu bahasa berorientasikaan objek sepertimana Visual BASIC 2008 Express Edition ini namun  ia amat berharga apabila sistem yang dibina sangat komplek.  Pada program yang ringkas, konsep OOP lebih mendatangkan masalah berbanding emudahan yang disediakan.
Semakin kompleks  sesebuah  sistem yang dibangunkan, pastinya para pengaturcara akan dapat  menghargai   kuasa   dan  mudahnya  menguruskan   kerja mereka secara fleksible dan lebih efektif. Dengan membuat  aturcara dalam Visual  BASIC Express Edition  tidak menjadikan kod anda serta merta dianggap OOP.  Tidak semua Class di  dalamnya dikodkan sebagai Object   kerana  sebahagiannya  hanya digunakan untuk  menyusun   organisasi  dalam program anda supaya ianya kelihatan lebih baik. Ianya adalah bergantung kepada diri kita sendiri menggunakan peraturan yang ada dalam bahasa pengaturcaraan ini untuk menghasilkan sebuah kod berorientsikan objek dengan baik.

Mengapa OOP?

Pada  suatu masa dahulu,   ketika  komputer  mula-mula diperkenalkan kepada dunia, kebanyakan pengaturcaraan adalah berorientasikaan baris (Line Oriented). Pada masa itu, hampir setiap baris kod akan menjalankan tugas yang spesifik dan setiap baris kod akan diikuti  baris kod yang  lain.  Aliran sesebuah program biasanya dari  baris ke baris, dan ada  juga penyambung ke cawangan kod yang lain sepeti statement GOTO dan sebagainya.  Secara umumnya,  kaedah  ini   sangat   linear  dan pengaturcara  terpaksa memahami setiap patah baris kod yang ada. Oleh itu masa yang agak lama diperlukan untuk   seseorang pengaturcara memahami   kod  orang  lain   terlebih  dahulu   sebelum meneruskan proses menulis aturcara. Antara contoh bahasa awal yang memiliki konsep ini seperti BASIC, Cobol dan Fortran.
Apabila  sesebuah program yang dibina bertambah kompleks  dan kod yang diguna mungkin   perlu   diubahsuai   banyak   kali,  maka   ini  menyebabkan   kesukaran   dalam susunan kod yang agak linear. Lama kelamaan, kod yang begitu banyak menjadi apa yang dinamakan sebagai Spaghetti Code. Kod yang tersangat komplek ini menjadikan tiada   siapa   akan  memahami   bagaimana   ianya   berfungsi   walaupun   penulis   asal program berkenaan. Bagi  mengatasi  masalah  ini  bahasa berorientasikaan prosedur   (Prosedural  Oriented) telah   dihasilkan  misalnya   C  dan   Pascal.   Dalam  pada   itu,   bahasa   lain   turut   juga diperkembangkan mengikut   konsep  tersebut.
Dengan adanya bahasa  yang memiliki gaya berprosedur   ini  akan  lebih memudahkan pengaturcara untuk menguruskan kod yang ditulis. Dengan prosedur baru ini juga dapat membentuk sikap pengaturcara untuk lebih bersistematik. Sejarah telah berlalu dan cara pengaturcaraan melalui  evolusi  yang sigkat,  masa kini pula  ramai   yang  menggunakan  prosedur  pengaturcaraan   terbaru  dikenali   sebagai Object Oriented. Pengaturcara melihat banyak faedah diperolehi dengan pendekatan yang   baru   ini   tambahan   pula   dengan   marketing  niche  daripada   Microsoft, menyebabkan ramai beralih kepada pengaturcaraan berorientasikaan objek.