Thursday, November 11, 2010

OOP (Object Oriented Programming)

Metode Object Oriented merupakan solusi pemecahan dari permasalahan metode pemrograman terstrukur. Kode dan data merupakan hal yang penting dalam terciptanya suatu program. Akan tetapi, semakin pesat dan majunya perkembangan teknologi di era sekarang membuat program semakin kompleks dan terperinci. Hal ini sangat menyulitkan programmer dalam proses pembuatan serta mengimplementasikan kode satu per satu dalam pembuatan suatu program yang menjanjikan. Untuk mempermudah dalam memecahkan suatu kode, atribut, maupun variabel, maka muncullah konsep OOP yang lebih efisien dan berguna dalam segi proses pembuatan dan implementasi.

Object Oriented Programming merupakan model konseptual yang merepresentasikan suatu objek dari dunia nyata yang memiliki sifat dan perilaku. Contohnya seperti manusia yang memiliki nama, umur, jenis kelamin, dll. Dari objek - objek yang sudah dibuat atau dibentuk maka muncullah kelas yang merupakan abstraksi dari objek - objek tersebut dimana data - data yang ada di dalamnya hanya dapat diakses oleh kelas itu sendiri.Wujud nyata dari kelas dinamakan instance. Jadi, apabila ada data yang ingin diganti atau dimanipulasi maka tinggal mengubahnya dari kelas tersebut. Data tersebut bisa berupa atribut dan juga method. Konsep OOP juga mengenalkan adanya method yang berfungsi sebagai prosedur dalam sebuah kelas yang biasanya digunakan pada tahap implementasi. OOP juga terdapat hubungan antar kelas atau relasi seperti komposisi, pewarisan, agregasi, asosiasi, dll yang bisa saling mempengaruhi keterkaitan antara satu kelas dengan kelas yang lain. Ada kelas yang terbentuk karena adanya kelas yang membentuknya. Contohnya hubungan komposisi seperti, kelas mobil dan kelas ban, kelas mobil tidak bisa berdiri tanpa ada kelas ban. Untuk dapat membentuk kelas mobil tersebut maka harus ada kelas pembentuknya, yaitu kelas ban. Untuk hubungan pewarisan, misalnya kelas person yang mewarisi kelas mahasiswa, kelas dosen, dan kelas ortu yang mewarisi atribut yang sama dari kelas pewarisnya. Agregasi adalah hubungan kelas dimana ada keterhubungan objek part dan objek whole. Dan asosiasi adalah keterkaitan antar kelas yang hubungannya tidak terlalu kuat. Oleh karena itu, OOP lebih memahami objek yang ada di dunia nyata dan sekitar kita.

 Contoh relasi


Inilah keuntungan dari OOP, apabila ada data yang harus dimanipulasi maka yang diubah data  - data hanya dalam kelasnya tersebut. Hal ini sangat berbeda jauh dengan konsep pemrograman terstruktur yang mempengaruhi hasil program apabila ada satu kode saja yang dimanipulasi maka terjadinya perombakan pada kode program. Hal ini tentu saja memakan waktu lebih lama dibandingkan dengan konsep OOP. Jadi, perubahan - perubahan dengan OOP tidak akan saling mempengaruhi fungsi maupun method karena adanya akses yang diperbolehkan pada kelasnya masing - masing.


sumber:   1. http://id.wikipedia.org/wiki/Pemrograman_berorientasi_objek
              2. http://www3.ntu.edu.sg
              3. http://oop-uai.blogspot.com

No comments:

Post a Comment