Nesne Yönelimli Programlama (OOP)

Veri ve metotlara sahip nesneleri kullanan paradigma (4 sütun).

Nesne Yönelimli Programlama (NYP), veri (öznitelikler) ve kod (metotlar) içeren bağımsız 'nesneler' etrafında kodu yapılandıran bir paradigmadır.

NYP'nin dört sütunu:
1. Kapsülleme: Veri ve metotları bir araya getirme, iç durumu gizleme
2. Soyutlama: Sadece temel özellikleri açığa çıkarma
3. Kalıtım: Sınıflar üst sınıflardan özellik/metot miras alır
4. Polimorfizm: Aynı arayüz, farklı uygulamalar

        graph LR
  Center["Nesne Yönelimli Programlama (OOP)"]:::main
  Rel_functional_programming["functional-programming"]:::related -.-> Center
  click Rel_functional_programming "/terms/functional-programming"
  Rel_java["java"]:::related -.-> Center
  click Rel_java "/terms/java"
  Rel_stored_program_concept["stored-program-concept"]:::related -.-> Center
  click Rel_stored_program_concept "/terms/stored-program-concept"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧠 Bilgi testi

1 / 1

🧒 5 yaşındaki gibi açıkla

LEGO talimatlarını düşün. Bir sınıf, bir ev inşa etme talimatları gibidir. Bu talimatlara göre inşa ettiğin her ev bir nesnedir. Farklı evler parça paylaşabilir (kalıtım) ama farklı görünebilir (polimorfizm)!

🤓 Expert Deep Dive

SOLID ilkeleri iyi NYP tasarımına rehberlik eder. Kalıtım yerine kompozisyon kırılgan temel sınıf sorununu önler. Duck typing (Python) kalıtım olmadan polimorfizmi mümkün kılar.

📚 Kaynaklar