Sabtu, 19 Desember 2009

OOP (Object Oriented Programming)

OOP (Object Oriented Programming)



SEJARAH OOP

Sebelum kita melangkah untuk pembelajaran OOP alangkah baiknya sebagai pengetahuan saja mari kita ulas mengapa ada konsep atau teknik pemograman OOP dan apakah ada teknik pemograman sebelum atau selain OOP ?

Konsep OOP ini sendiri sebenarnya sudah lama dimulai yaitu pertengahan 1960-an tepatnya tahun 1966 (Ole Johan Dhal dan Kristen Nygaard berasal dari universitas Olslo, norwegia) dengan sebuah bahasa program SIMULA yang dituliskan pada jurnal yang berjudul “SIMULA An Algol Based Language” kemudian dilanjutkan di era 70-an dengan SMALLTALK. Tetapi secara teknis pengembangan teknik OOP belum insetif atau optimal dipergunakan, pada pertengahan 80-an konsep OOP sudah mulai dibicarakan dan semakin populer dengan bahasa pemogramannya seperti C++ dan Eifle. Popularitas OOP semakin berkembang dan menjadi buah bibir hampir semua pengembang perangkat lunak pada tahun 90-an, dengan akhirnya konsep OOP menjadi booming ditahun 2002 hingga sekarang. Adapun bahasa yang banyak digunakan pengembang yaitu Java (Sun Microsystem), kemudian visual basic (Microsoft) dan C# (c-sharp) diperkenalkan oleh Microsoft.

Seperti yang kita pertanyakan diatas teknik pemograman selain teknik OOP adalah teknik pemograman terstruktur. Beranjak dari teknik pemograman terstruktur maka terbentuk teknik pemograman OOP. Konsep pemograman OOP ini bermaksud untuk mempermudah teknik dalam pemograman ketimbang pemograman terstruktur. Banyak sekali kemudahan yang didapat teknik OOP salah satunya adalah program dapat dipecah menjadi beberapa bagian. Sehingga mempercepat dalam pengembangan software. Tentunya lebih efektif karena jika dipecah dan dikerjakan oleh beberapa programmer maka bisa lebih focus kepada objek tertentu saja tanpa harus mengetahui objek yang lainnya.


KONSEP OOP

Mari kita pelajari lebih dalam apa itu konsep OOP?

OOP (Object Oriented Programming) secara arti dalam bahasa indonesia adalah pemograman berorientasi objek, dari arti nya saja kita sudah bisa mendefinisikan bahwa program yang akan kita buat terdiri dari bermacam macam objek kemudian objek tersebut dapat dipanggil kapan saja. Itulah kelebihan pada paradigm orientasi objek memandang permasalahan sebagai sekumpulan obyek, sehingga dapat dengan mudah memecahkan masalah karena algoritma, logika dan behavior pemogramannya dapat lebih spesifik. Kemudian objek tersebut dikemas (enkapsulasi) sehingga lebih memudahkan dalam trace karena permasalahan yang timbul tidak akan lari dari kemasan yang dimaksud. Setiap objek dapat menerima pesan, memproses data, mengirim pesan ke objek lainnya dan juga pengembalian nilai. Tanpa harus mengetahui isi dari objek tersebut. Selain itu Konsep Pemograman berorientasi objek sangat bisa mendekati pada permasalahan secara nyata. sehingga lebih cepat dalam menyatukan pemikiran, maka akan meminimalis kesalapahaman sistem dan prosedur yang akan dikembangkan


CLASS

Kelas adalah semacam cetakan, atau template, untuk membuat objek, atau pun wadah dari objek ataupun lebih dari satu objek, secara ringkasnya adalah class merupakan tempat sekumpulan objek memiliki karakteristik yang sama, sehingga dapat dibuatkan semacam blueprint­nya atau templatenya


OBJECT

Objek Mewakili suatu entitas, baik fisik, atau konsep yang memiliki attribut, variabel, identitas, state dan behavior. State adalah kondisi kondisi yang mungkin di ada dalam obyek. Behavior menentukan bagaimana objek dapat beraksi dan bereaksi. melalui operasi dan method

Objek merupakan instance (wujud nyata) dari Class

Atribut, merupakan property yang dimiliki oleh suatu objek

Variable, merupakan tempat menampung nilai yang yang diberikan terhadap atribut

Method, merupakan cara bagaimana objek bereaksi dan menerima reaksi


Contoh Code Java*

// Class

class Meja{

String warna;

int jumlahKaki;

// Method

void cetakMeja(){

System.out.println("Warna : " + warna);

System.out.println("Jumlah Kakinya : " + jumlahKaki);

}

}


public class MejaInfo{

public static void main(String[] args){

// object

Meja infomeja = new Meja();

// attribut diberi nilai

infomeja.warna = "Hitam";

infomeja. jumlahKaki = 4;

// Menjalankan Method

infomeja. cetakMeja();

}

}



INTERFACE

Interface sama saja artinya dengan class

Tetapi perbedaannya interface hanya memiliki method,

Interface tidak memiliki implementasi

// interface

interface intMobil{

public abstract void majukan();

public abstract void mundurkan();

}




// implement

class Mobil implements intMobil {

public void majukan (){

System.out.println("Mobil Maju ");

public void matikan(){

System.out.println("Mobil Mundur");

}}




public class mobilInfo{

public static void main(String[] args){

Mobil infoMobil = new Mobil ();

infoMobil. majukan ();

infoMobil. mundurkan ();

}

}


INHERITANCE/PEWARISAN

mencipatakan sebuah objek baru yang sebagian sifatnya sama percis atau sudah ada pada objek lain. Anda dapat menggunakannya sebagai fondasi untuk objek yang sama yang memilliki perilaku atau karakteristik sama. Selain Inheriten mempunyai sifat pewaris tetapi dia mempunyai beberapa sifat lagi yang unik yang tidak dimiliki oleh objek lainnya

class Rumah{

int harga = 0;

// method

void hitungHarga (int hargaPermeter, int luasBangunan) {

harga = harga + (hargaPermeter * luasBangunan);

System.out.println("harga yang didapat :" + harga );

}

}


// Inheritance

class RumahMewah extends Rumah {

public void hitungJumlahKamar(int jumlahKamar) {

System.out.println(“Jumlah Kamar :”+ jumlahKamar);

}

}


class RumahInfo {

public static void main(String[] args) {

// object

RumahMewah infoRumah = new RumahMewah ();

// method

infoRumah. hitungJumlahKamar (5);

}

}

Tidak ada komentar:

Posting Komentar

Loan Calculator - Metode dan Cara menghitung pinjaman

Metode dan Cara Pinjaman Kredit - Loan Calculator. Saat Anda hendak melakukan kredit kepada bank, hal yang biasa diperhatikan adala...