C# da Nesne Yönelimli Programlama (OOP)
Nesne Yönelimli Programlama (OOP), gerçek dünyadaki nesneleri modellemek için kullanılan bir programlama paradigmasıdır. C#, OOP ilkelerini tam olarak destekleyen güçlü bir programlama dilidir. OOP'nin temel kavramları şunlardır:
1. Kapsülleme (Encapsulation)
* Veri Gizleme: Bir nesnenin iç durumunu (özellikleri) ve davranışlarını (metotları) tek bir birim olan sınıf içinde toplamak ve dış dünyadan gizlemektir.
* Erişim Belirleyiciler: public, private, protected ve internal gibi erişim belirleyicileri, sınıf üyelerinin görünürlüğünü kontrol eder.
* Örnek:
public class Person
{
private string name;
private int age;
public void SetName(string name)
{
this.name = name;
}
public string GetName()
{
return name;
}
}
2. Kalıtım (Inheritance)
* Hiyerarşi Oluşturma: Mevcut bir sınıftan (base class) yeni sınıflar (derived class) türetmektir.
* Kod Tekrarını Azaltma: Türetilmiş sınıflar, temel sınıfın özelliklerini ve metotlarını miras alır.
* Örnek:
public class Animal
{
public void Eat()
{
Console.WriteLine("Eating...");
}
}
public class Dog : Animal
{
public void Bark()
{
Console.WriteLine("Woof!");
}
}
3. Çok Biçimlilik (Polymorphism)
* Farklı Formlar: Farklı tipteki nesnelerin aynı tipteymış gibi davranabilme özelliğidir.
* Metot Aşırı Yükleme ve Geçersiz Kılma:
* Aşırı Yükleme: Aynı isimde ancak farklı parametrelere sahip birden fazla metot tanımlama.
* Geçersiz Kılma: Türetilmiş bir sınıfta sanal bir metodu yeniden tanımlama.
* Örnek:
public class Shape
{
public virtual void Draw()
{
Console.WriteLine("Drawing a shape...");
}
}
public class Circle : Shape
{
public override void Draw()
{
Console.WriteLine("Drawing a circle...");
}
}
4. Soyutlama (Abstraction)
* Temel Özelliklere Odaklanma: Gereksiz uygulama detaylarını gizleyerek sadece önemli özellikleri ortaya çıkarmaktır.
* Arayüzler ve Soyut Sınıflar:
* Arayüzler: Bir sınıfın uygulamak zorunda olduğu metotların sözleşmesini tanımlar.
* Soyut Sınıflar: Kısmi bir uygulama sağlar ve türetilmiş sınıfların uygulamak zorunda olduğu soyut metotlar içerebilir.
* Örnek:
public interface IShape
{
void Draw();
}
public abstract class Shape
{
public abstract void Draw();
}
OOP'nin C# ile kullanımı
C#, OOP ilkelerini destekleyen güçlü bir dildir. Sınıflar, nesneler, kalıtım, çok biçimlilik ve soyutlama gibi OOP kavramları C# ile kolayca uygulanabilir. Bu sayede daha düzenli, okunaklı ve genişletilebilir uygulamalar geliştirmek mümkündür.
Daha Fazla Bilgi İçin:
* Microsoft Learn: https://learn.microsoft.com/tr-tr/dotnet/csharp/fundamentals/tutorials/oop
* C# Corner: [geçersiz URL kaldırıldı]
Başka sorularınız varsa lütfen çekinmeyin!
Özellikle öğrenmek istediğiniz bir OOP konusu var mı? (Örneğin, arayüzler, kalıtım türleri, çok biçimliliğin farklı örnekleri gibi)
Hiç yorum yok:
Yorum Gönder