Swift Inheritance ve Polymorphism Nedir?
Swift Inheritance ve Polymorphism Nedir?
Swift programlama dilinde inheritance (kalıtım) ve polymorphism (çok biçimlilik), nesne yönelimli programlamanın temel taşları arasındadır. Inheritance, bir sınıfın başka bir sınıftan özellik ve metotları devralmasını sağlarken; polymorphism ise aynı arayüz veya temel sınıfı paylaşan farklı nesnelerin, kendi özel davranışlarını gerçekleştirebilmesini mümkün kılar. Bu makalede "Swift inheritance ve polymorphism nedir", nasıl kullanılır ve kod örnekleri ile nasıl işlev gördüğünü inceleyeceğiz.
Swift'te Inheritance Nasıl Çalışır?
Inheritance, kod tekrarını önler ve ortak kodları tek bir yerde toplamanıza imkân tanır. Swift’te sınıflar, başka bir sınıftan inherit edebilir. "Base" yani üst sınıfın tüm özellik ve fonksiyonları, "subclass" adı verilen alt sınıfa geçer ve istenirse üzerinde değişiklik (override) yapılabilir.
Swift ile Kalıtım Örneği
class Hayvan {
var isim: String
init(isim: String) {
self.isim = isim
}
func sesCikar() {
print("
<Hayvan> ses AA")
}
}
class Kedi: Hayvan {
override func sesCikar() {
print("
Miyav! Benim adim \(isim)")
}
}
let tekir = Kedi(isim: "Tekir")
tekir.sesCikar() // "Miyav! Benim adim Tekir"
Polymorphism (Çok Biçimlilik): Pratik Kullanımı
Polymorphism sayesinde, base tipinden bir referans ile farklı subclass nesnelerini yönetip, davranışlarını çağırabilirsiniz. Bu, kodunuzu esnek hale getirir ve tipten bağımsız işlemler yapmanızı kolaylaştırır. Özellikle koleksiyonlar ve fonksiyon parametrelerinde polymorphism oldukça güçlü bir araçtır.
Polymorphism ile Fonksiyonel Kullanım
let hayvanlar: [Hayvan] = [Hayvan(isim: "Canli"), Kedi(isim: "Minnak")]
for hayvan in hayvanlar {
hayvan.sesCikar()
}
// "<Hayvan> ses "ve "Miyav! Benim adim Minnak" yazılır
Sonuç ve İleri Okuma
"Swift inheritance ve polymorphism nedir" sorusunun yanıtı, daha sürdürülebilir, bakımı kolay ve güçlü yazılımlar geliştirmek açısından önemlidir. Kalıtım sayesinde ortak işlevler tekrar yazılmaz; polymorphism ile kodun esnekliği artar. Swift ve nesne yönelimli programlama hakkında daha fazla bilgi edinmek için resmi Swift dökümantasyonu'nu inceleyebilirsiniz.

Yorum Gönder