Python Nesne Yönelimli Programlama (OOP)
Nesne Yönelimli Programlama (OOP), programları "nesneler" üzerinden kurgulayan bir yaklaşımdır. Bu yöntem, gerçek dünyadaki objeleri (araba, kullanıcı, banka hesabı vb.) kod dünyasına aktarmanızı sağlar. OOP sayesinde kodlar daha düzenli, modüler ve tekrar kullanılabilir hale gelir.
1. Sınıf (Class) ve Nesne (Object) Nedir?
Sınıf bir taslaktır (mimari plan), Nesne ise o taslaktan üretilmiş gerçek bir örnektir.
Basit Sınıf ve Nesne Örneği
class Araba:
def __init__(self, marka, model):
self.marka = marka # Özellik (Attribute)
self.model = model
def bilgileri_goster(self): # Metod
print(f"Araba: {self.marka} {self.model}")
# Nesne oluşturma
araba1 = Araba("Toyota", "Corolla")
araba1.bilgileri_goster() # Çıktı: Araba: Toyota Corolla
2. __init__ Metodu ve Self Nedir?
Python'da __init__ metodu, bir nesne oluşturulduğunda otomatik olarak çalışan yapıcı (constructor) metoddur.
Self Kavramı: Metodun hangi nesne üzerinde işlem yapacağını belirtir. Sınıf içindeki özelliklere erişmek için mutlaka kullanılması gerekir.
3. Kalıtım (Inheritance)
Bir sınıfın özelliklerini ve metodlarını başka bir sınıfa aktarmasına kalıtım denir. Bu, kod tekrarını önler.
Kalıtım (Inheritance) Örneği
class Hayvan:
def ses_cikar(self):
print("Ses çıkarılıyor...")
class Kopek(Hayvan): # Hayvan sınıfından miras aldık
def ses_cikar(self): # Metodu geçersiz kıldık (Overriding)
print("Hav hav!")
boncuk = Kopek()
boncuk.ses_cikar() # Çıktı: Hav hav!
OOP'nin 4 Temel İlkesi
1. Sınıflandırma: Benzer işleri bir çatı altında toplama.
2. Kalıtım: Ortak özellikleri miras alma.
3. Kapsülleme (Encapsulation): Veriyi dışarıdan erişime kapatma.
4. Çok Biçimlilik (Polymorphism): Aynı isme sahip metodun farklı işler yapması.