Dönem Sonu Özeti
2025
__init__
(Yapıcı Metot): Nesne oluşturulurken ilk ayarları yapar.self
Parametresi: Metotlar içinde nesnenin kendisini temsil eder.@classmethod
, cls
)@staticmethod
)_
(korumalı), __
(özel).@property
dekoratörü.abc
modülü: Soyut Sınıflar (Abstract Classes) ve Soyut Metotlar (@abstractmethod
) ile kontrat tanımlama.super()
fonksiyonu: Üst sınıf metotlarına erişim.__metot__
).__str__
, __repr__
, __len__
.__add__
, __eq__
vb. ile operatörlere özel anlamlar katma.@
)
for
döngüsünün arkasındaki sihir: __iter__
ve __next__
.yield
anahtar kelimesi ile bellek dostu iteratorlar.(ifade for eleman in koleksiyon)
ile tek satırda üreteç.mypy
gibi araçlarla statik analiz imkanı.typing
modülü (örn: List[int]
, Optional[str]
).Single Responsibility Principle (Tek Sorumluluk)
Open/Closed Principle (Açık/Kapalı)
Liskov Substitution Principle (Liskov Yerine Geçme)
Interface Segregation Principle (Arayüz Ayrımı)
Dependency Inversion Principle (Bağımlılık Tersine Çevirme)
Amaç: Daha anlaşılır, yönetilebilir ve değişime adapte olabilir kodlar yazmak.
unittest
, pytest
kütüphaneleri.print()
ile basit takip.pdb
(Python Debugger).threading
).multiprocessing
).asyncio
, async/await
). Amaç: Performans artışı