If-Else Koşulları
Koşullu ifadeler program akışını kontrol eder.
Temel If
eğer x > 0 {
yazdır("Pozitif sayı")
}
İngilizce syntax:
if x > 0 {
print("Positive number")
}
If-Else
eğer yaş >= 18 {
yazdır("Yetişkin")
} değilse {
yazdır("Çocuk")
}
Else If
eğer not >= 90 {
yazdır("Pekiyi")
} değilse eğer not >= 80 {
yazdır("İyi")
} değilse eğer not >= 70 {
yazdır("Orta")
} değilse {
yazdır("Zayıf")
}
İç İçe If
eğer kullanıcı != null {
eğer kullanıcı.aktif {
eğer kullanıcı.doğrulanmış {
yazdır("Giriş başarılı")
}
}
}
Ternary Operatörü
değişken durum = yaş >= 18 ? "Yetişkin" : "Çocuk"
If Expression
BERK'te if bir ifade olarak kullanılabilir:
değişken maksimum = eğer a > b { a } değilse { b }
değişken mesaj = eğer hata {
"Hata oluştu"
} değilse {
"Başarılı"
}
Guard Clauses
Erken dönüş deseni:
işlev işle(değer: Sayı?) -> Sonuç<Sayı, Yazı> {
eğer değer == null {
hata dön "Değer null olamaz"
}
eğer değer < 0 {
hata dön "Değer negatif olamaz"
}
tamam dön değer * 2
}
Mantıksal Operatörlerle
eğer yaş >= 18 && ehliyet_var {
yazdır("Araç kullanabilir")
}
eğer admin || moderator {
yazdır("Yetki var")
}
eğer !boş_mu {
yazdır("Veri var")
}
Short-Circuit Evaluation
// İkinci ifade değerlendirilmez
eğer kullanıcı == null || kullanıcı.sil() {
// kullanıcı null ise sil() çağrılmaz
}
Best Practices
✅ Yapılması Gerekenler
// Anlamlı değişkenler
eğer kullanıcı_doğrulandı && oturum_geçerli {
izin_ver()
}
// Guard clauses kullanın
eğer !geçerli_mi {
geri dön
}
// Pozitif koşullar tercih edin
eğer aktif {
işle()
}
❌ Kaçınılması Gerekenler
// Çok uzun if-else zincirleri
eğer x == 1 {
...
} değilse eğer x == 2 {
...
} // 20 tane else if
// Bunun yerine match kullanın!
// Gereksiz iç içe if
eğer a {
eğer b {
eğer c {
// 5 seviye
}
}
}
// && operatörü kullanın