-
iOS(Swift) Eğitimlerine Başlarken
-
iOS(Swift) Eğitimlerine Başlarken Giriş
-
Bir Swift Programının Oluşturulması ve Çalıştırılması
-
Swift Diline Hızlı Bir Giriş
-
Diziler (Arrays) ve Sözlükler (Dictionaries)
-
Kontrol Komutları (Control Statements)
-
Swift'te Fonksiyonlar ve Kontrol Transfer Komutları (Control Transfer Statements)
-
Sınıflar(Classes) ve Nesneler(Objects) ve Yapılar(Structures)
-
Sayma Tipi (Enumeration), Protokoller (Protokols) ve Delege Etme (Delegation)
-
iOS(Swift) Eğitimlerine Başlarken Giriş
-
Swift Dilinin Temel Özellikleri
-
Bit Düzeyinde İşlem Gören Operatörler
-
Kontrol Komutları (Control Statements)
-
Swift'te Fonksiyonlar
-
Swift'te Fonksiyonlar Giriş
-
İç İçe (Nested) Fonksiyonlar
-
Birden Çok Formel Parametre alan Fonksiyonlar
-
Tek Çift Sayı Ayrımı Yapan Bir Fonksiyon
-
Parametresiz Fonsiyonlar
-
Değer Göndermeyen Fonksiyonlar
-
Birden Çok Değer Gönderen Fonksiyonlar
-
Dış Parametre İsimleri (External Parameter Names)
-
Değişkin (Variadic) Parametreler
-
Değişken (Variable) Parametreler
-
In-Out Türü Parametreler
-
Fonksiyon Tipinde Sabit ya da Değişken Tanımlamak
-
Bir Fonksiyonun Parametre Listesinde Başka Bir Fonksiyonun Kullanılması
-
Jenerikler (Generics)
-
Kapatma (Closure)
-
Swift'te Fonksiyonlar Giriş
-
Nesneye Yönelik Programlama (Object Oriented Programming)
-
Sınıf (Class) Oluşturma
-
Sınıf (Class) Oluşturma Giriş
-
Delege Etme (Delegaation)
-
Yapılar (Structures)
-
Sayma Tipi (Enumeration)
-
Dinamik(Dynamic) ve Statik(Static) Bağlama (Binding)
-
Çok Biçimlilik (Polymorphism)
-
Uzatmalar (Extensions)
-
Hesaplanmış Özellikler (Computed Properties)
-
Extension Yardımı ile Bir Yapıya (Structure) Özellik (Property) Ekleme
-
Protokoller (Protocols)
-
Self İfadesi
-
İlk Değer Atama (Inıtializer)
-
Nesnelere Ayrılan bellek alanını İade etme (Deinitializer)
-
Sınıf (Class) Oluşturma Giriş
-
Swift'te Tipler (Types)
-
Koleksiyon Tipleri (Collection Types)
-
Koleksiyon Tipleri (Collection Types) Giriş
-
Dizi İçine Aralık (Range) İfadesi ile Atama Yapma
-
Dizinin Elemanlarını Tarama
-
Dizilere İlk Değer Atamak için Alternatif bir Yol:count ve repeatedValue Metotları
-
Bir Tablonun Satır ve Sütun Toplamları ve Genel Toplamı
-
Kare Matris Swift Programı
-
Dizilerin Kopyasının Oluşturulması
-
Karakter Dizileri ile ilgili Swift Programı
-
Sözlüklerin Kopyasının Oluşturulması
-
Koleksiyon Tipleri (Collection Types) Giriş
-
Bildirimler (Declarations)
Sınıfa ait hesaplanmış bir özellik bildirimi için class anahtar sözcüğü kullanılmalıdır. Statik bir değişken özelliği bildirimi için de static anahtar sözcüğü kullanılmalıdır.
ÖRNEK:
struct YAPI {
static var DepTipOz = "ankara"
static var HesTipOz: Int {
return 65
}
}
enum SAYTIP {
static var DepTipOz = "istanbul"
static var HesTipOz: Int {
return 77
}
}
class SINIF{
class var HesTipOz: Int {
return 69
}
}
print("SINIF.HesTipOz...\(SINIF.HesTipOz)")
print("YAPI.HesTipOz...\(YAPI.HesTipOz)")
print("SAYTIP.HesTipOz...\(SAYTIP.HesTipOz)")
print("YAPI.DepTipOz...\(YAPI.DepTipOz)")
print("SAYTIP.DepTipOz...\(SAYTIP.DepTipOz)")
PROGRAMIN ÇIKTISI
SINIF.HesTipOz...69
YAPI.HesTipOz...65
SAYTIP.HesTipOz...77
YAPI.DepTipOz...ankara
SAYTIP.DepTipOz...istanbul
TİP KOPYALAMA BİLDİRİMLERİ
Swift’te, mevcut tipler, başka isim altında da oluşturulabilir. Bu tür bir işlem,
typealias TipYeniAd=MevcutTip
şeklinde bir bildiri ifadesi ile gerçekleştirilir.
Bu tanımlama yapıldıktan sonra, TipYeniAd sözcüğü, MevcutTip yerine kullanılabilir.
ÖRNEK:
typealias TamSay=Int
typealias Cift=Double
typealias Metin=String
var x:TamSay=12
var y:Cift=67.09
var z:Metin="orhan veli"
print("x=\(x)")
print("y=\(y)")
print("z=\(z)")
PROGRAMIN ÇIKTISI:
x=12
y=67.09
z=orhan veli
FONKSİYON BİLDİRİMİ
Bir program içinde ya da bir sınıf, yapı, enumeration içinde fonksiyon bildirimi aşağıdaki formattadır:
func FonksiyonAdi(Parametreler)->DönüşTipi
{ Deyimler
}
Eğer fonksiyon bir değer göndermiyorsa yani void tipinde ise bu durumda dönüş tipi kullanılmaz ve fonksiyon aşağıdaki şekli alır:
func FonksiyonAdi(Parametreler)
{ Deyimler
}
ÖRNEK:
Aşağıdaki sirala adlı fonksiyon void tipi (değer göndermeyen) bir fonksiyondur; kendisine gönderilen diziyi küçükten büyüğe doğru sıralayıp yazdırmaktadır:
func sirala(x: inout [Int], n: Int) {
var i = 0, j = 0
var t: Int
while i <= n - 2 {
j = i + 1
while j <= n - 1 {
if x[i] > x[j] {
t = x[i]
x[i] = x[j]
x[j] = t
}
j += 1
}
i += 1
}
for i in x {
print(i)
}
}
var u: [Int] = [56, 9, 11, -9, 76, 4]
sirala(x: &u,n: 6)
PROGRAMIN ÇIKTISI
-9
4
9
11
56
76
ÖRNEK
Aşağıdaki ArOrt adlı fonksiyon ise kendisine gönderilen Double tipinde bir dizinin aritmetik ortalamasını hesaplayarak bunu gene Double tipinde çağrıldığı noktaya geri göndermektedir:
func ArOrt(x: [Double], n: Double) -> Double {
var s: Double = 0
for i in x {
s += i
}
return s / n
}
var a: [Double] = [3, 9, 5, 2]
print("a dizisinin aritmetik ort=\(ArOrt(x: a, n: 4.0))")
var b:[Double]=[13.0,19.0,5.0,7.0,12.0]
print("b dizisinin aritmetik ort=\(ArOrt(x: b,n: 5.0))")
PROGRAMIN ÇIKTISI
a dizisinin aritmetik ort=4.75
b dizisinin aritmetik ort=11.2