Object Oriented Programming yani Nesne Yönelimli Programlama, her işlevin neslek olarak soyutlandığı bir programlama şeklidir.
Bu açıklamayı daha da örnekleyerek açıklarsak, gerçek hayatta gördüğümüz birçok nesnenin bilgisayar ortamına aktarılma şeklidir. Yani bir nesnenin rengi, durumu, ismi, üretim yılı gibi birçok özelliklerin bilgisayar ortamında gösterilmesi buna örnek olarak verilebilir.
1960’lı yılların sonuna doğru ortaya çıkan bu programlama şekli, o dönemlerde yazılım dünyasının yaşadığı sıkıntının sonucudur.
Yazılımların karışıklığı ve boyutlarının artması, belirli bir nitelik düzeyini korumak için gereken maliyeti, zamanı ve çabayı arttırıyordu. OOP bu soruna karşı çözüm olarak getiren özelliği yazılımdaki birimselliği yüksek oranda benimsemesidir.
Bu GitHub deposu, C# programlama dilinde OOP (Object-Oriented Programming) kavramlarını anlamak isteyenler için çeşitli örnekleri ve konu notlarını içermektedir. Aşağıda, depodaki içeriklerin sırasıyla listesi bulunmaktadır.
- 2. Constructor
- 3. OOP Encapsulation
- 4. Referance and Value Type
- Abstract Class
- Çok Biçimlilik (Polymorphism)
- IEnumerable ve IEnumerator Kullanımları
- OOP Class
- OOP Delegate
- OOP EventHandler
- OOP IComparable ve OOP Comparer
- OOP Inheritance
- OOP Proje
- OOP Special Collection
- OOP Static
- Sealed Class
- Struct ve Sealed
- WFA BilgeBurger
- OOP Enum
- OOP Interface
Bu dosyada, C# dilinde constructor (kurucu metot) kavramının kullanımı ve örnekler yer almaktadır.
Bu dosyada, C# dilinde encapsulation (kapsülleme) kavramının kullanımı ve örnekler bulunmaktadır.
Bu dosyada, C# dilinde referans ve değer tipi (reference type and value type) kavramlarının anlatımı ve örnekleri bulunmaktadır.
Bu dosyada, C# dilinde abstract class (soyut sınıf) kavramının kullanımı ve örnekleri yer almaktadır.
Bu dosyada, C# dilinde çok biçimlilik (polymorphism) kavramının kullanımı ve örnekler bulunmaktadır.
Bu dosyada, C# dilinde IEnumerable ve IEnumerator arabirimlerinin kullanımı ve örnekler yer almaktadır.
Bu dosyada, C# dilinde sınıfların tanımlanması, kullanımı ve örnekleri bulunmaktadır.
Bu dosyada, C# dilinde delegate (delege) kavramının kullanımı ve örnekleri yer almaktadır.
Bu dosyada, C# dilinde event handler (olay işleyici) kavramının kullanımı ve örnekleri bulunmaktadır.
Bu dosyada, C# dilinde IComparable arabirimi ve Comparer sınıfının kullanımı ve örnekleri yer almaktadır.
Bu dosyada, C# dilinde miras alma (inheritance) kavramının kullanımı ve örnekler bulunmaktadır.
Bu dosyada, C# dilinde OOP kavramlarını içeren bir proje örneği bulunmaktadır.
Bu dosyada, C# dilinde özel koleksiyon (special collection) kullanımı ve örnekleri yer almaktadır.
Bu dosyada, C# dilinde static (sabit) üyelerin kullanımı ve örnekler bulunmaktadır.
Bu dosyada, C# dilinde sealed (mühürlü) sınıfların kullanımı ve örnekleri yer almaktadır.
Bu dosyada, C# dilinde struct ve sealed kavramlarının kullanımı ve örnekleri bulunmaktadır.
Bu dosyada, C# dilinde Windows Forms Application (WFA) ile bir proje olan "BilgeBurger" örneği bulunmaktadır.
Bu dosyada, C# dilinde enum (sabit) tipi kullanımı ve örnekler yer almaktadır.
Bu dosyada, C# dilinde interface (arayüz) kavramının kullanımı ve örnekleri bulunmaktadır.
Bu depo, C# dilinde OOP konularını anlamak ve örnekler incelemek için oluşturulmuştur. Her bir dosya, ilgili konuya yönelik açıklamalar ve örnekler içermektedir.
Eğer katkıda bulunmak veya düzeltmeler yapmak isterseniz, pull request göndermekten çekinmeyin. Umarım bu depo, C# OOP konusunda size yardımcı olur!
İyi çalışmalar!