Nesne Yönelimli Programlama (OOP) ve Patterns
Sınıflar, kalıtım, arayüzler ve tasarım desenleri ile C#’ta yeniden kullanılabilir ve sürdürülebilir kod yazma yaklaşımı.
Nesne Yönelimli Programlama ve Patterns
C# nesne yönelimli bir dildir. Bu bölümde class, inheritance, polymorphism gibi OOP kavramları ile SOLID prensipleri ele alınır. Ayrıca gerçek hayattaki uygulamalarda sıkça kullanılan Factory, Singleton ve Observer gibi tasarım desenleri de incelenir.
Amaç: Kodun yeniden kullanılabilirliğini artırmak, bakımı kolay sistemler inşa etmek.
TL;DR
- Class, Property, Method → OOP temeli.
- Arayüzler ve abstract sınıflar.
- SOLID + tasarım desenleri.
C# Sınıf (Class), Object, Property ve Metotlar
C#’ta class, object, property ve metot kavramlarını öğrenin. Nesne yönelimli programlamanın temel yapı taşları örneklerle açıklanıyor.
C# Struct (Yapılar) – Class ile Farkları
C#’ta struct ve class arasındaki farkları öğrenin. Bellek modeli, kalıtım, boxing ve performans karşılaştırmalarıyla açıklanıyor.
C# Constructor, Destructor ve this Kullanımı
C#’ta constructor, destructor ve this anahtar kelimesinin kullanımını öğrenin. Nesne yaşam döngüsü ve sınıf içi erişim örneklerle anlatılıyor.
Sealed, Static ve Partial Class Kullanımı in C#
C#’ta sealed, static ve partial class kavramlarını öğrenin. Amaçları, farkları ve kullanım senaryoları örneklerle anlatılıyor.
C# Record Types ve Immutable Nesneler
C# record type ve immutable nesneleri öğrenin. Değişmez veri modeli, value equality ve with ifadeleriyle modern C# pratiklerini keşfedin.
C# Encapsulation, Kalıtım, Polimorfizm
C#’ta encapsulation, kalıtım ve polimorfizmi öğrenin. OOP’nin temel prensiplerini örneklerle anlayıp doğru kullanımını keşfedin.
C# Interface ve Abstract Sınıflar
C#’ta interface ve abstract sınıfları öğrenin. Farklarını, ne zaman hangisini kullanacağınızı ve tasarım senaryolarını örneklerle keşfedin.
C# Delegates ve Events
C#’ta delegate ve event kavramlarını öğrenin. Olay tabanlı programlama, callback mantığı ve kullanım senaryoları örneklerle anlatılıyor.
C# Lambda İfadeleri
C#’ta lambda ifadelerini öğrenin. Kısa sözdizimi, Func ve Action kullanımı ile LINQ sorgularında pratik örnekler keşfedin.
C# Extension Metotlar
C#’ta extension metotları öğrenin. Mevcut sınıfları değiştirmeden yeni metotlar eklemeyi örneklerle keşfedin.
C# Dependency Injection Temelleri
C#’ta Dependency Injection kavramını öğrenin. Bağımlılıkların yönetimi, gevşek bağlılık ve test edilebilirlik örneklerle anlatılıyor.
C# ile SOLID Prensipleri
C# örnekleriyle SOLID prensiplerinin uygulanışı: daha esnek, sürdürülebilir ve test edilebilir kod tasarımları.
C# Tasarım Desenleri (Factory, Singleton, Repository, Observer vb.)
C#’ta Factory, Singleton, Repository ve Observer gibi tasarım desenlerini öğrenin. Esnek ve sürdürülebilir yazılım geliştirme örneklerle anlatılıyor.
C# Interop (C/C++ Kütüphaneleri ile Çalışma)
C#’ta Interop kullanarak C/C++ kütüphaneleriyle çalışmayı öğrenin. P/Invoke, unmanaged kod ve veri geçişi örneklerle açıklanıyor.