Apa Itu PBO ?

Pengantar Pemrograman Berorientasi Objek (OOP)

Apa itu OOP?

Pemrograman Berorientasi Objek (Object-Oriented Programming / OOP) adalah paradigma pemrograman yang berfokus pada penggunaan objek dan kelas (class) untuk mendesain dan mengorganisir kode program. OOP meniru cara manusia memandang dunia nyata sebagai kumpulan objek yang memiliki atribut (data/properti) dan perilaku (fungsi/metode).


Konsep Dasar OOP

Ada 4 pilar utama dalam OOP:

1. Encapsulation (Enkapsulasi)

Menyembunyikan detail internal dari suatu objek dan hanya menampilkan bagian yang dibutuhkan. Tujuannya adalah melindungi data dan menyederhanakan antarmuka objek.

class Mahasiswa {
    private String nama;
    
    public void setNama(String nama) {
        this.nama = nama;
    }
    
    public String getNama() {
        return this.nama;
    }
}

2. Inheritance (Pewarisan)

Kemampuan sebuah kelas untuk mewarisi properti dan metode dari kelas lain. Hal ini memungkinkan reusability (penggunaan ulang kode) dan hirarki antar objek.

class Hewan {
    void suara() {
        System.out.println("Hewan bersuara");
    }
}

class Anjing extends Hewan {
    void suara() {
        System.out.println("Guk guk");
    }
}

3. Polymorphism (Polimorfisme)

Kemampuan objek untuk memiliki banyak bentuk, terutama saat method yang sama dipanggil dari objek yang berbeda namun memberikan hasil berbeda.

Hewan h1 = new Anjing();
h1.suara(); // Output: Guk guk

4. Abstraction (Abstraksi)

Menyembunyikan kompleksitas sistem dan hanya menampilkan fitur penting. Hal ini dilakukan dengan menggunakan class abstrak atau interface.

abstract class Bentuk {
    abstract void gambar();
}

class Lingkaran extends Bentuk {
    void gambar() {
        System.out.println("Menggambar lingkaran");
    }
}

Struktur Kelas dan Objek

Kelas (Class)

Template atau blueprint untuk membuat objek. Kelas mendefinisikan atribut dan metode.

class Mobil {
    String merk;
    int tahun;

    void nyalakanMesin() {
        System.out.println("Mesin dinyalakan");
    }
}

Objek

Instansi nyata dari kelas.

Mobil m1 = new Mobil();
m1.merk = "Toyota";
m1.tahun = 2020;
m1.nyalakanMesin();

Keuntungan OOP

  • Modularitas: Kode lebih terorganisir.

  • Reusability: Kelas dapat digunakan kembali.

  • Maintainability: Mudah diperbarui dan dirawat.

  • Scalability: Mudah dikembangkan untuk proyek besar.


Contoh Lengkap Sederhana (Java)

class Mahasiswa {
    String nama;
    int umur;

    void tampilkanInfo() {
        System.out.println("Nama: " + nama);
        System.out.println("Umur: " + umur);
    }
}

public class Main {
    public static void main(String[] args) {
        Mahasiswa m1 = new Mahasiswa();
        m1.nama = "Andi";
        m1.umur = 20;
        m1.tampilkanInfo();
    }
}

Penutup

OOP adalah paradigma yang sangat berguna dalam pengembangan perangkat lunak modern. Konsep seperti enkapsulasi, pewarisan, dan polimorfisme membuat kode menjadi lebih fleksibel, terstruktur, dan mudah dikelola.


Posting Komentar

0 Komentar