Intern
Nesne yönelimli programlama (OOP) nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Nesne yönelimli programlama (OOP), "nesneler" kavramına dayanan bir programlama paradigmasıdır; bu nesneler, veri (alanlar veya özellikler olarak adlandırılan) ve kod (işlevler veya davranışlar olarak adlandırılan prosedürler) içerebilir.
OOP'nin temel ilkeleri:
- Kapsülleme: Verileri ve bu veriler üzerinde çalışan metodları tek bir varlıkta (nesnede) toplama. Nesnenin iç durumunu gizler ve yalnızca gerekli arayüzü açığa çıkarır.
- Soyutlama: Nesnenin temel özelliklerine odaklanmak, önemsiz detayları görmezden gelmek. Karmaşık sistemleri basitleştirilmiş şekilde temsil eder.
- Miras: Bir sınıfın (alt sınıf veya türetilmiş sınıf) başka bir sınıfın (üst sınıf veya temel sınıf) özelliklerini ve metodlarını miras almasını sağlayan mekanizma. Kodun yeniden kullanılmasını teşvik eder.
- Çok Biçimlilik: Aynı arayüzü farklı temel veri türleri için kullanabilme yeteneği. Farklı sınıflardan nesnelerin, aynı metod çağrısına farklı şekilde yanıt vermesini sağlar, bu da onların özgü türüne bağlıdır.
C#'ta OOP'nin ek kavramları:
- Sınıflar: Nesneler oluşturmak için şablonlar veya planlar. Nesnelerin yapısını ve davranışını tanımlar.
- Nesneler: Bellekteki sınıf örnekleri.
- Arayüzler: Bir sınıfın uygulaması gereken üyeler kümesini (metodlar, özellikler, olaylar) tanımlayan sözleşmeler. Soyutlama ve çoklu uygulama sağlarlar.
OOP'nin avantajları:
- Kodun yeniden kullanımı.
- Daha iyi modülerlik ve kod organizasyonu.
- Büyük sistemlerin bakım ve genişletilmesini kolaylaştırır.
- Nesneler aracılığıyla gerçek dünya ile daha iyi uyum sağlar.
Örnek:
// Sınıf örneği
public class Dog
{
// Alan (özellik)
public string Name { get; set; }
// Metod (davranış)
public void Bark()
{
Console.WriteLine($"{Name} Woof diyor!");
}
}
// Nesne oluşturma ve kullanma örneği
/*
Dog myDog = new Dog(); // Dog sınıfından nesne oluşturma
myDog.Name = "Buddy"; // özellik değerini ayarlama
myDog.Bark(); // metod çağrısı
Dog anotherDog = new Dog { Name = "Lucy" }; // başka bir nesne oluşturma ve başlatma
anotherDog.Bark();
*/