İçeriğe geç

Swift ile Class Generics

swift

Merhabalar bu yazımda Swift ile güzel kullanışlı bir özellik olan Genericslerin sınıf ve protokol yapısı ile beraber nasıl kullanıldığına örnek vereceğim.

Bu özellik sayesinde sınıflar farkli tipler yada veriler için ayrı ayrı yazılmak zorunda değil.Tip kullanımlarına esneklik ve dinamiklik katan bir durum.

Aşağıdaki verdiğim örnekte protokol ve sınıfın dışardan aldığı tip herhangi bir dizi tipi olabilir.Nesneyi yaratırken test<Int>() dediğimizde sınıfta kullanılan V tipi Int tipinin yerine geçmiş olur.

Kontrol işlemini yaparken generics bir fonksiyon yapısı kullandık ve burda birde yeni olarak ön koşul koyduk <c1: sameProtocol,c2: sameProtocol where c1.T == c2.T> c1 ve c2 değişkenleri aynı protokole bağlı farklı sınıflar kullanılabilinir. ancak where ile aynı tipe sahip olmaları koşulu eklenmiştir. Int veya String gibi.

Aynı protokole sahip ve aynı tip kullanan sınıfları fonksiyona gönderdiğimizde dizinin countu aynı olduğu için true cevabını aldık ancak aynı protokole sahip ama tipi farklı olduğu için where koşulu sağlandı uyarı ile karşılaştık.

Aşağdaki şekilde kullanırsak her tip için kontrol sağlayacaktır.

Modern programlamanın getirdiği güzel özelliklerden 🙂

Tarih:Swift

Bu yazı yorumlara kapalı.

© 2019 Kenan Atmaca