Mobil Programlama

iOS

DERS PROGRAMI
iOS 101 Ders Programı

Hesaplanmış Özellikler (Computed Properties)

Lisans: Creative Commons 11.12.2020 tarihinde güncellendi
Bakabileceğiniz Etiketler: Eğitmen: Geleceği Yazanlar Ekibi

Uzatmalar sayesinde, Swift’teki mevcut veri tipleri içine, yeni hesaplanmış tipler ya da özellikler eklenebilir. Aşağıdaki örnekte, deniz ve kara milini km cinsinden temsil eden tipler ve kullanılışı görülmektedir:

 

ÖRNEK


 

extension Double {

var denmil: Double { return self * 1.8520 }

var m: Double { return self * 1_000}

var km:Double {return self }

var karmil: Double { return self * 1.609344 }



}

let mesafe = 510.km

print("MESAFE= \(mesafe) kilometre")

let yol = 35.denmil

print("35 DENIZ MİLİ... \(yol) kilometre")

let dis=230.karmil



print("230 KARA MİLİ... \(dis) kilometre")

Programın çıktısı ise aşağıdadır:

 

MESAFE= 510.0 kilometre

35 DENIZ MİLİ... 64.82 kilometre

230 KARA MİLİ... 370.14912 kilometre

 

 

Bu örnekte oluşturulan yeni tipler (denmil, karmil) double tipindedirler ve double türdeki her ifadede kullanılabilirler.

Örneğin, farklı birimlerdeki mesafe, yol ve dis değerlerinin toplamı km cinsinden otomatik olarak hesaplanır:

let t=mesafe+yol+dis

print(“TOPLAM=\(t)..KM")

 

print komutu aşağıdaki çıktıyı verecektir:

 

TOPLAM=944.96912..KM

 

İLK DEĞER ATAMA

 

Aşağıdaki sehir adlı yapıda iki özellik mevcuttur: yer ve boyut

Yer özelliğinin iki bileşeni vardır: enlem ve boylam

Boyut özelliğinin de iki bileşeni mevcuttur:i nsan ve ticarihacim

Aşağıdaki kod ile bu özelliklerin tümüne ilk değer olarak 0 atanmaktadır:

 

struct konum{

var enlem = 0.0, boylam = 0.0

}

struct nufus {

var insan = 0.0, ticarihacim = 0.0

}

struct sehir {

var yer = konum()

var boyut = nufus()

}

let k=sehir()

print("ENLEM=\(k.yer.enlem)")

print("BOYLAM=\(k.yer.boylam)")

print("NÜFUS=\(k.boyut.insan)")

print("TİCARİ HACİM=\(k.boyut.ticarihacim)")

 

PROGRAMIN ÇIKTISI

 

ENLEM=0.0

BOYLAM=0.0

NÜFUS=0.0

TİCARİ HACİM=0.0