Rabu, 28 April 2010

Object Oriented Programming (OOP)

OOP (Object Oriented Programming) atau Pemprograman berorientasi objek adalah suatu cara baru dalam berfikir serta berlogika dalam menghadapi masalah-masalah yang akan dicoba diatasi dengan bantuan komputer. OOP, tidak seperti pendahulunya (Pemprograman Terstruktur), mencoba melihat permasalahan lewat pengamatan dunia nyata dimana setiap objek adalah entitas tunggal yang memiliki kombinasi struktur data dan fungsi tertentu. Ini kontras dengan pemprograman terstruktur dimana struktur data dan fungsi didefinisikan secara terpisah dan tidak berhubungan secara erat.

Pemrograman orientasi-objek menekankan konsep berikut:

kelas — kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh ‘class of dog’ adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.


Objek – membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah program komputer; objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.


Abstraksi – Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem melayani sebagai model dari “pelaku” abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.


Enkapsulasi – Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.


Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa tersebut dikirim. Contohnya, bila sebuah burung menerima pesan “gerak cepat”, dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama. -digituck


Hak Akses

OOP memberikan beberapa tipe hak akses terhadap variable (atribut), methode bahkan class. Tipe tipe hak akses tersebut yaitu Public, Private, atau Protected. Ini adalah salah satu bagian terpenting dari OOP, sehingga programmer yang hendak belajar OOP wajib memahami konsep pengaksesan data ini dalam OOP. -sentra-ilmu


Package

Package adalah suatu cara untuk memanage class-class yang kita buat. Package akan sangat bermanfaat Jika class-class yang kita buat sangat banyak sehingga perlu dikelompokkan berdasarkan kategori tertentu. Package adalah koleksi dari beberapa class dan interface yang berhubungan, dan menyediakan proteksi akses dan pengelolaan namespace. -wordpress


Pewarisan (Inheritance)

Pewarisan / Inheritance adalah pemberian sifat-sifat dari sebuah class utama (super class) kepada class - class lain yang memiliki sifat-sifat yang sejenis (sub-class). Class utama biasanya bersifat umum/global, sementara sub-class bersifat spesifik/khusus.

Contohnya:
Class bicycle yang sebelumnya dibuat adalah sebuah contoh sepeda pada umumnya (super class). Class ini dapat diwariskan kepada sub-class yang lebih spesifik, contohnya adalah sepeda gunung, sepeda balap, atau sepeda BMX. Dimana ketiga sepeda tersebut adalah sama-sama sebuah sepeda, yang memiliki sifat-sifat yang sama dari sepeda pada umumnya, dan juga memiliki sebuah sifat khusus yang tidak dimiliki sub-class lainnya. -Tiyangjava


Array

Dalam pemograman java, pendeklarasian suatu array bisa ditulis dalam bentuk:
int [ ] b;
statemen diatas hanya mendeklarasikan variabel b sebagai variabel bertipe array integer, untuk membuat(construct) array kita tulis dengan menggunakan operator ‘new’ seperti contoh berikut:
int [ ] a = new int[20];
statement diatas berarti telah dibuat array dengan nama a bertipe integer dan memiliki kapasitas 100 value, ingat indeks mulai dari 0 – 99, tidak ada indeks ke-100 (a [100]).
#bila kita paksakan mengakses indeks ke [100] maka akan muncul exception “array index out of bounds”.#
dalam pengisian value sebuah array kita bisa lakukan dengan melakukan metode looping seperti:

int [ ] a = new int[100];
for (int i = 0 ; i < 100 ; i++)
a [ i ] = i; // isi array a dengan value 0 – 99

untuk mengetahui ukuran / panjang dari suatu array, kita gunakan syntaks: namaaray.length
contoh : System.out.println(a.length); akan mencetak ukuran dari array a, yaitu sebanyak 100.

contoh pengisian array dengan menggunakan looping:
for (int i = 0 ; i < a.length ; i++)
System.out.println(a [ i ]); -sudoblog

Tidak ada komentar:

Posting Komentar