Pemrograman Berorientasi Objek (OOP) – Konsep Dasar
Pengantar
Pemrograman Berorientasi Objek (Object-Oriented Programming / OOP) adalah paradigma pemrograman yang berfokus pada objek — yaitu entitas yang memiliki data dan perilaku.
OOP membantu kita menulis kode yang terstruktur, mudah dipelihara, dan mudah dikembangkan dengan memodelkan dunia nyata melalui objek.
Konsep Utama OOP
Ada empat konsep dasar dalam OOP yang wajib kamu pahami:
1. Kelas (Class)
Kelas adalah blueprint atau cetak biru dari objek.
Kelas mendefinisikan atribut (data) dan metode (fungsi) yang dimiliki objek.
Python:
class Mobil:
def __init__(self, merk, warna):
self.merk = merk
self.warna = warna
def jalan(self):
print(f"{self.merk} sedang berjalan")
2. Objek (Object)
Objek adalah instansiasi dari kelas, yaitu entitas nyata yang dibuat berdasarkan blueprint kelas.
Python:
mobil1 = Mobil("Toyota", "Merah")
mobil1.jalan() # Output: Toyota sedang berjalan
3. Enkapsulasi (Encapsulation)
Enkapsulasi berarti menyembunyikan detail internal dan hanya menampilkan antarmuka yang diperlukan.
- Data dan metode dikemas bersama dalam objek
- Melindungi data dari akses langsung yang tidak diinginkan
Python:
class BankAccount:
def __init__(self, saldo):
self.__saldo = saldo # atribut privat
def deposit(self, jumlah):
self.__saldo += jumlah
def get_saldo(self):
return self.__saldo
4. Pewarisan (Inheritance)
Pewarisan memungkinkan sebuah kelas mewarisi sifat dan metode dari kelas lain, sehingga bisa memperluas fungsionalitas tanpa menulis ulang.
Python:
class MobilSport(Mobil):
def turbo(self):
print(f"{self.merk} menggunakan turbo!")
5. Polimorfisme (Polymorphism)
Polimorfisme berarti objek dari kelas yang berbeda dapat merespon metode yang sama dengan cara yang berbeda.
Python:
class Kucing:
def suara(self):
print("Meong")
class Anjing:
def suara(self):
print("Guk guk")
def buat_suara(hewan):
hewan.suara()
k = Kucing()
a = Anjing()
buat_suara(k) # Meong
buat_suara(a) # Guk guk
Ringkasan Konsep OOP
| Konsep | Penjelasan |
|---|---|
| Kelas | Blueprint untuk membuat objek |
| Objek | Instance dari kelas |
| Enkapsulasi | Menyembunyikan data dan fungsi tertentu |
| Pewarisan | Memperluas kelas dengan mewarisi dari kelas lain |
| Polimorfisme | Metode yang sama, implementasi berbeda |
Studi Kasus: Program Hewan
Python:
class Hewan:
def suara(self):
print("Suara hewan")
class Anjing(Hewan):
def suara(self):
print("Guk guk")
class Kucing(Hewan):
def suara(self):
print("Meong")
hewan1 = Anjing()
hewan2 = Kucing()
hewan1.suara() # Guk guk
hewan2.suara() # Meong
Tips Belajar OOP
Penutup
OOP adalah pondasi pemrograman modern dan digunakan luas di berbagai bahasa seperti Python, Java, C++, dan lain-lain.
Menguasai OOP membuka jalan untuk membuat aplikasi besar yang terstruktur dan mudah dikembangkan.