Merhabalar bu yazımda Swift ve İOS programlamanın önemli konularından Protocol‘den bahsedip örnek vereceğim.
Swift dili Hem object orianted hemde protocol orianted programlama dili olarak geçer.Swift dilinin kütüphaneleri elementleri bir birinin özelliğini devrederek,izin alarak çalışır.
Örnek olarak tableview oluşturduk ve outlete table adını verdik.Bu tableview nesnesi view nesnesinin üstüne yerleştirildi.viewin üzerine ek yapmamızın için
table.delegete = self
table.datasource = self
Şeklinde belirtmemiz gerekir.Bu tüm ios os x yada diğer kütüphane nesneleri için aynıdır.
Diğer gelişmiş dillerde protocol; interface olarak geçer ve değişken, fonksiyonun gövdesi yazılmaz sadece belirtilir.
protocol vip { var name:String? {get} var age:Int? {get} func nameGetter() func ageGetter() } class cls:vip { var name:String? var age:Int? init (){} init (iname:String?,iage:Int?) { name = iname age = iage } func nameGetter() { print(name!) } func ageGetter() { print(age!) } } var object = cls(iname: "Kenan", iage: 20) func proto(p:protocol<vip>){ p.ageGetter() p.nameGetter() } proto(object) // Kenan 20 var vproto:vip = object vproto.nameGetter() // Kenan
Yukardaki örnekte protocol kullanımı ve protocol tipine ait fonksiyon,değişken kullanımını gösterdim.
[…] belli başlı yapıda olan protokolleri Swiftin extension özelliği sayesinde extend […]
[…] ile daha önceki yazılarımda Protocol konusu ile ilgili yazılar yazdım. Delegate mantığıda protokol aracılığı ile sağlanmakta. […]