Senin, 29 April 2013

Konsep Object Oriented (Eli Trikusmiyati_11112141)

          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.
         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.
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.

Sebelum memasuki dalam bahasa pemrograman,  ada beberapa hal yang harus di ingat:
1.    Program yang akan kita buat adalah terdiri dari sekumpulan object yang saling berinteraksi/ saling mengirimkan pesan. Misalnya kita asumsikan program kita adalah sebuah mobil, dan bagian-bagian dari mobil tersebut adalah object-object (mesin, rangka mobil dan lain sebagainya)yang saling berhubungan dan menjadi satu kesatuan yang membangun mobil tersebut.
2.     Berfikirlah object sebagai tipe “data buatan” (seperti struct, Enum). Namun tipe “data buatan” ini memiliki kelebihan yaitu dapat menyimpan informasi (sebagai property) dan juga dapat melakukan “aktivitas” (sebagai method/ fungsi).
3.    Setiap object memiliki “tipe” tersendiri. Tipe disini dimaksudkan agar kita dapat mengetahui “pesan” apa yang dapat kita kirimkan terhadap object tersebut. Atau dengan kata lain dengan mengetahui “tipe” suatu object kita dapat memanggil fungsi yang terdapat didalamnya ataupun informasi yang disimpan oleh object tersebut.

Hal yang harus di ingat ketika mendesain suatu program :
  •  Correctness and Sufficiency
       Dalam mendesain program sebaiknya kita memperhatikan bahwa object-object yang kita   desain dapat menjamin kebenaran informasi dan juga kecukupan informasi yang dibutuhkan.
  •   Robustness
       Object-object yang kita desain sebaiknya dapat membuat suatu program menjadi tangguh, dalam hal ini diharapkan program yang dibuat memiliki error yang sedikit dan dapat bertahan dalam situasi yang sulit sekalipun.
  •   Flexibility
    Object-object yang didesain sebaiknya mdah untuk diexpand atau dikembangkan (bersifat flexibel). Hal ini dibutukan karena dalam pembuatan program sering kali kita harus merubah desain yang telah kita buat sebelumnya karena adanya perubahan desain yang diinginkan oleh user/pengguna.
  •      Reusability
        Kode-kode program yang telah kita buat, dapat kita gunakan kembali. Hal ini haruslah terpenuhi dalam mendesain program yang baik. Karena ketika kita menggunakan point ini maka kita akan lebih mudah untuk me-manage program yang kita buat, apalagi disaat kita harus mengganti suatu informasi dalam program yang kita buat.
  •     Efficiency
    Desain yang kita buat sebaiknya efisien karena akan berkaitan dengan penggunaan resource hardware yang kita gunakan. Baik itu dalam faktor kecepatan maupun dalam faktor penyimpanan data/program.
Dengan berpegang pada beberapa hal diatas diharapkan kita dapat mendesain program yang tangguh, dan bagus.

Tidak ada komentar:

Posting Komentar