Rabu, 14 September 2011

Pengantar Pemrograman Berbasisi Object (Pert-1)


OOP merupakan singkatan dari object-Oriented Programing  atau jika di bahasa Indonesiakan "pemrograman yang berorientasi pada objek" merupakan sebuah pendekatan untuk pengembangan / development  suatu software dimana dalam struktur software tersebut didasarkan pada interaksi objek dalam penyelesaian suatu proses/tugas.
MekanismeOOP untuk dapat bekerja,
1. Kelas dan Object
2. Method
3.Inheritance
4.Polymorphism
5.Reusability
Selain mekanisme OOP juga mempunyai  karaktaristik,
-  Object
- Abstraction
- Encapsulation
- Polymorphism
- Inheritance
- Aggregation
Kesimpulan,kita harus belajar OOP !
Konsep dari object oriented programming (OOP) adalah lebih dari sekedar sebuah konsep pemrograman, Object oriented programming adalah cara berpikir tentang aplikasi yang mempelajari untuk berpikir bahwa aplikasi bukan sekedar prosedur melainkan sebagai object dan real entity. Object yang dimaksud disini memiliki pengertian suatu modul yang mengkombinasikan antara data dan kode program yang bekerja sama dalam program dengan melewatkan proses satu sama lain. Jadi object oriented programming merupakan cara yang paling efisien untuk menulis program komputer yang sangat mudah untuk di kombinasikan dan untuk dipergunakan kembali.
Object oriented programming lebih memfokuskan kepada manipulasi object. Kenapa seorang programmer harus mempelajari object oriented programming bahkan seorang programmer yang tidak pernah bekerja dengan object oriented programing pun harus mempelajarinya juga. Hal ini dikarenakan pada suatu hari nanti semua bahasa pemrograman akan menambahkan kemampuan object oriented programming pada bahasanya. Object oriented programming yang paling populer adalah java dan C++, tetapi visual basic pun sudah ikut menambahakan kemampuan ini sejak meluncurkan VB 4.0. Pada kesempatan kali ini kita hanya akan membahas tentang visual basic dan C++ saja. Sesuai dengan namanya object oriented programming maka konsep object merupakan jantung dari object oriented programming.

Setelah tahu Gambaranya mari kita Pelajari Karakteristik OOP,

Misal kamu ingin mencetak tulisan Pengertian OOP dalam bentuk kertas ,tentunya kamu harus bekerja dengan Object sebuah printer yang bertanggung jawab untuk data serta metode yang digunakan untuk menjalankan printermu.
jadi,
Printer = Objectnya
Tombol Power pada Printer & Tombol lainnya = Datanya
Cara menyalakan Printer,memasukan kertas = method
Data dan Method adalah bagian dari Class
itu jika digambarkan.

Abstraction
Ketika kamu berinteraksi dengan object-object di dunia ini, kamu  sering  hanya konsentrasi dengan sebuah bagian dari propertiesnya. Tanpa kemampuan untuk mensarikan/abstract atau  menyaring  untuk dibuang properties object yang asing / tidak ada hubungannya, maka kamu akan menemukan kesulitan untuk memproses informasi yang kebanyakan membombarding kamu. Sebagai hasil abstraction, ketika 2 orang berbeda berinteraksi dengan object yang sama, mereka sering setuju  dengan  bagian yang berbeda atas atribut. Ketika kami  mengendarai mobil, kami perlu tahu  kecepatan  serta  tujuan  yang  akan  dicapai. Karena mobil itu otomatis, maka kami tidak perlu tahu berapa RPMs dari mesinnya, jadi kami akan membuang informasi ini. Tapi informasi ini sangat diperlukan oleh mekanik atau pembalap. Ketika membangun objects dalam aplikasi OOP, adalah penting untuk menggabungkan konsep abstraction ini. Jika kamu  membangun aplikasi shipping, kamu harus membangun object produk dengan atribut seperti ukuran dan berat.

Warna adalah contoh informasi yang tidak ada hubungannya dan harus dibuang. Tetapi ketika kamu membangun order-entry application, warna menjadi penting dan harus termasuk atribut object produk. Ciri penting lainnya dari OOP adalah encapsulation.

Encapsulation
Encapsulation adalah sebuah proses dimana tidak ada akses langsung ke data yang diberikan, bahkan hidden. Jika kamu ingin mendapat data, kamu harus berinteraksi dengan object yang bertanggung jawab atas dara tersebut. Dalam contoh inventory, jika kita ingin melihat atau mengupdate informasi atas produk, kita seharusnya bekerja melalui object produk. Untuk membaca data, kita mengirimkan pesan ke object produk, kemudian object produk akan membaca pesan dan mengirim pesan balik ke kamu. Object produk mendefinisikan bahwa operasi dapat dilakukan pada data produk. Jika kamu mengirim pesan untuk memodifikasi data dan jika object produk menentukan bahwa permintaan itu valid maka permintaan tersebut akan dilakukan dan akan mengirimkan pesan balik bersama hasilnya. Pikirkan mengenai Human Resource Department (HRD), yang meng-encapsulasi informasi mengenai karyawan. Mereka menentukan bagaimana data ini dapat digunakan da dimanipulasi. Setiap permintaan data karyawan atau permintaan untuk mengupdate datanya harus dijalankan melalui mereka. Contoh lain, network security. Setiap permintaan informasi security atau perubahan kebijakan security harus dilakukan melalui network administrator. Data security di-encapsulate dari user network.

Dengan melakukan encapsulasi pada data, berarti kamu membuat data dari sistemmu lebih secure dan terpercaya. Karena kamu mengetahui bagaimana data diakses dan operasi apa yang sedang berjalan pada data. Hal ini membuat maintenance program menjadi lebih mudah. Kamu juga dapat memodifikasi metode yang digunakan untuk kerja pada data, dan jika kamu tidak merubah bagaimana metode itu diminta dan tipe response dikirim balik, maka kamu tidak dapat merubah object lain dengan menggunakan metode tersebut. Pikirkan ketika kamu mengirim surat melalui pos. Kamu membuat permintaan ke kantor pos agar mengantar surat, dan bagaimana kantor pos menyelesaikannya kita tidak perlu tahu. Jika ada perubahan rute yang digunakan, maka hal itu tidak mempengaruhi keinginan untuk kirim suratlewat kantor pos. Kamu tidak perlu tahu prosedur internal yang digunakan oleh kantor pos untuk mengantar surat.

Polymorphism
Polymorphisms adalah kemampuan 2 buah object yang berbeda untuk merespon pesan permintaan yang sama dalam suatu cara yang unik. Contoh, saya melatih anjing saya dengan perintah untuk menggonggong dan juga saya melatih burung untuk merespon perintah saya untuk berkicau. Saya lakukan latihan untuk merespon kepada mereka dengan perintah lisan. Melalui polymorphism saya tahu bahwa anjing dan burung akan merespon dengan gonggongan atau kicauan.
Bagaimana hal ini berhubungan dengan OOP? Kamu dapat membuat objects yang dapat merespon pesan yang sama dalam implementasi yang unik. Contohnya, kamu dapat mengirim pesan print ke objectprinter yang akan mencetak pada printer, dan kamu juga dapat mengirim pesan yang sama ke object screen yang akan menuliskan pada screen monitor. Dalam OOP, kamu menerapkan tipe polymorphism melalui proses yang disebut overloading. Kamu dapat mengimplementasikan metode yang berbeda pada sebuah object yang mempunyai nama yang sama.

Inheritance
Banyak objects diklasifikasikan menurut hirarki. Contoh, kamu dapat mengklasifikasikan sebuah mobil yang mempunyai karakteristik umumnya mobil, seperti mempunyai ban, mesin, serta body. Keturunan berikutnya diklasifikasikan dengan atribut umum seperti ukuran, jumlah roda, isi silinder dll atau mengklasifikasikan mereka atas dasar daya angkutnya. Contoh, ada kendaraan komersial atau kendaraan pribadi, ada truk atau mobil penumpang. Kamu menggunakan inheritancedalam OOP untuk mengklasifikasikan objects dalam program sesuai karakteristik umum dan fungsinya. Hal ini akan membuat pekerjaan bersama object lebih mudah dan lebih intuitif. Hal ini juga membuat programming lebih mudah karena memungkinkan kita untuk mengkombinasikan karakteristik umum kedalam object parent dan mewariskan karakteristik ini ke child object.

Aggregation
Aggregation adalah kondisi ketika object berisi gabungan dari object-object yang berbeda dan bekerja bersama. Contoh mesin pemotong rumput terdiri dari object roda, objects mesin, object pisau dll. Object mesinpun merupakan gabungan dari berbagai object. Kemampuan untuk menggunakan aggregation dalam OOP adalah satu feature yang powerful yang memungkinkan model menjadi akurat.

Tidak ada komentar:

Posting Komentar