Buscar

Konsep Dasar Objek Oriented Programming (OOP)

C++ adalah pengembangan bahasa dari bahasa c dengan ditambahkan kemampuan Objek Oriented Programming (OOP).
OOP bukanlah sebuah bahasa pemograman, melainkan cara untuk menjadikan program yang kita buat menjadi lebih modular karena suatu permasalahan dikumpulkan dalam satu objek yang selanjutnya disebut dengan kelas (class). OOP merupakan bentuk penyederhanaan dari bahasa prosedural sehingga program akan lebih mudah dikembangkan. Dalam bahasa prosedural untuk menyelesaikan salah satu masalah dalam program, kita harus membuat banyak fungsi. Dalam prosedular, yang lebih ditekankan adalah bagaimana cara membuat bukan apa yang kita buat. Bila dibuat ilustrasi antara prosedural dan OOP seperti berikut :

Bila kita perhatikan ilustrasi di atas, tampak bahwa dalam OOP kita menyatukan data dan fungsi menjadi suatu objek. Objek ini diberi nama class. Penekanan dalam OOP adalah setiap kegiatan memiliki proses. Misal kita ingin memasukan data ke dalam suatu objek maka harus dibuat proses membaca data. Bandingkan kedua program berikut untuk menghitung luas persegi panjang secara prosedural programming dengan Object Oriented Programming.

Program berikut dengan cara prosedur untuk menginput data kemudian data yang diinput digunakan untuk menghitung luas persegi panjang.
#include
using namespace std;

int a,b;

void set_data1(int nilai_a, int nilai_b){
 a = nilai_a;
 b = nilai_b;
};

int luas_persegipanjang(){
 return a*b;
};

int main(){
 int panjang, lebar;
 cout << "Panjang : ";     cin >> panjang;
 cout << "\n" << "Lebar : ";  cin >> lebar;
 set_data1(panjang, lebar);
 cout << "\n" << "Luas Persegi Panjang : " << luas_persegipanjang();
 return 0;
}



Program berikut dengan pendekatan OOP untuk menginput data kemudian menghitung luas dari data yang telah dimasukan.
#include
using namespace std;
class luassegi4{
 int a, b;
 public:
  void set_data(int, int);
  int luas_persegipanjang();
};

void luassegi4::set_data(int nilai_a, int nilai_b){
 a = nilai_a;
 b = nilai_b;
};

int luassegi4::luas_persegipanjang(){
 return a*b;
}

int main(){
 luassegi4 luas4;
 int panjang, lebar; 
 cout << "Panjang : "; cin >> lebar;
 luas4.set_data(panjang, lebar);
 cout << "\n" << "Luas Persegi Panjang : " << luas4.luas_persegipanjang();
}

0 comments:

Posting Komentar