Panduan Pemrograman Berorientasi Objek dengan Python – Pemrograman Berorientasi Objek (OOP) adalah paradigma pemrograman yang menggunakan konsep objek untuk mengorganisasi dan merancang kode. Python, sebagai bahasa pemrograman serbaguna, mendukung OOP dan menyediakan fitur-fitur kaya yang memungkinkan pengembangan aplikasi yang modular dan mudah dipelihara. Berikut adalah panduan singkat untuk pemrograman berorientasi objek dengan Python:
Kelas dan Objek
Kelas: Kelas adalah blueprint atau cetak biru untuk menciptakan objek. Ini mendefinisikan atribut (variabel) dan metode (fungsi) yang akan dimiliki oleh objek tersebut.
Python :
class Mobil:
def __init__(self, merk, warna):
self.merk = merk
self.warna = warna
def info_mobil(self):
return f”Mobil {self.merk} berwarna {self.warna}.”
Objek
Objek adalah instansi dari suatu kelas. Objek memiliki atribut dan dapat memanggil metode yang didefinisikan di dalam kelasnya.
python
mobil_saya = Mobil(“Toyota”, “Merah”)
print(mobil_saya.info_mobil()) # Output: Mobil Toyota berwarna Merah.
Pewarisan (Inheritance)
Pewarisan memungkinkan kelas baru (kelas anak) untuk mewarisi atribut dan metode dari kelas yang sudah ada (kelas induk).
Python :
class MobilListrik(Mobil):
def __init__(self, merk, warna, baterai):
super().__init__(merk, warna)
self.baterai = baterai
def info_mobil_listrik(self):
return f”Mobil listrik {self.merk} berwarna {self.warna} dengan baterai {self.baterai} kWh.”
Polimorfisme
Polimorfisme memungkinkan penggunaan metode yang sama pada beberapa kelas. Metode dengan nama yang sama dapat memiliki implementasi yang berbeda di setiap kelas.
Python :
def tampilkan_info(mobil):
print(mobil.info_mobil())
mobil1 = Mobil(“Honda”, “Biru”)
mobil2 = MobilListrik(“Tesla”, “Hitam”, 75)
tampilkan_info(mobil1)
tampilkan_info(mobil2)
Enkapsulasi
Enkapsulasi melibatkan penyembunyian detail implementasi dari dunia luar dan membatasi akses langsung ke atribut kelas.
Python :
class Pegawai:
def __init__(self, nama, gaji):
self.__nama = nama # Atribut privat
self.__gaji = gaji
def get_nama(self):
return self.__nama
def get_gaji(self):
return self.__gaji
Metode dan Atribut Kelas
Metode dan atribut kelas adalah metode atau atribut yang terkait dengan kelas, bukan dengan objek spesifik. Mereka dapat diakses tanpa membuat instansi objek.
Python :
class Kalkulator:
pi = 3.14 # Atribut kelas
@classmethod
def hitung_luas_lingkaran(cls, jari_jari):
return cls.pi * (jari_jari ** 2)
python
print(Kalkulator.hitung_luas_lingkaran(5)) # Output: 78.5
Pemrograman berorientasi objek dengan Python memberikan fleksibilitas dan struktur yang kuat untuk pengembangan perangkat lunak. Dengan pemahaman yang baik tentang konsep-konsep dasar seperti kelas, objek, pewarisan, polimorfisme, enkapsulasi, metode, dan atribut kelas, Anda dapat merancang kode Python yang efisien dan mudah dipelihara.