İçeriğe geç
academia.sh

Kurs Başlangıç

Swift Dili

Yayın Güncelleme

Bu kursun sonunda

Kursa başla

01

Dil Temelleri

Swift'in tasarım hedefleri, sabitler ve değişkenler, tip çıkarımı, temel tipler, dizgi ve karakter modeli, işleçler, desen eşlemeli switch ile denetim akışı, argüman etiketli fonksiyonlar ve yakalama listeli kapanışlar.

  1. 01 Swift'in Tasarım Hedefleri Swift'in üç hedefini — güvenlik, ifade gücü, başarım — bir ölçü eksenine bağlar: bu ifade ne zaman değerlendiriliyor? Sekiz ifadeyi dört ana ayırır.
  2. 02 Sabitler ve Değişkenler `let` ve `var` ile tip çıkarımını, açık tip bildirimini ve atama anını ölçer: sabit hemen mi değerlendirilir, atama her seferinde mi?
  3. 03 Temel Tipler `Int`, `Double`, `Bool` ve `String` tiplerini tanıtır; dönüşümün açık olduğunu ve bir dönüşüm ifadesinin hemen değerlendirildiğini ölçer.
  4. 04 Dizgi İşlemleri `String` değerinin karakter ve bayt sayısını, dizinlemeyi ve ifade yerleştirmeyi ölçer: yerleştirilen ifade her kullanımda yeniden kurulur.
  5. 05 İşleçler Aritmetik, karşılaştırma ve aralık işleçlerini tanıtır; `||`, `&&` ve üçlü işlecin sağ tarafının hiç değerlendirilmeyebileceğini ölçer.
  6. 06 Denetim Akışı Koşulları, döngüleri ve desen eşlemeli `switch` ifadesini tanıtır; ilk eşleşmeden sonraki `where` koşullarının hiç değerlendirilmediğini ölçer.
  7. 07 Fonksiyonlar Argüman etiketlerini, varsayılan değerleri, demetle çoklu dönüşü ve `inout` parametreyi tanıtır; varsayılan argüman ifadesinin her çağrıda değerlendirildiğini ölçer.
  8. 08 Kapanışlar Kapanış sözdizimini, `$0` kısaltmasını, sondaki kapanışı ve `sorted(by:)` çağrısını tanıtır; yakalama listesinin kapanış oluşturulurken bir kez değerlendirildiğini ölçer.

02

Tip Sistemi

Yokluğun tipte ifadesi olarak isteğe bağlı değerler ve güvenli açma, yapılar ve sınıflarla değer ve referans semantiği, numaralandırmalar, saklanan, hesaplanan ve gözlemleyen özellikler, protokoller, uzantılar, genellikler, hata yönetimi ve erişim denetimi.

  1. 01 İsteğe Bağlı Değerler Yokluğun tipte ifade edilmesinin, nil üzerinde dönüştürücü kapanışın hiç çalışmamasının ve iç içe katmanlarda yokluğun nerede durduğunun ölçümü.
  2. 02 İsteğe Bağlı Açma if let ve guard let sağ tarafının, ?? zincirinin ve isteğe bağlı zincirlemenin ne zaman değerlendirildiğinin ölçümü.
  3. 03 Yapılar ve Sınıflar Yapıların atamada kopyalanmasının, sınıfların paylaşılmasının, varsayılan değerin ne zaman kurulduğunun ve kopyanın ilk değişiklikte oluşmasının ölçümü.
  4. 04 Numaralandırmalar Ham değerin ve ilişkili değerin ne zaman kurulduğunun, desen eşlemeyle nasıl açıldığının ve hesaplanan özelliğin her okunuşta koştuğunun ölçümü.
  5. 05 Özellikler Saklanan, hesaplanan ve gözlemleyen özelliğin, lazy özelliğin ve static let değerinin ne zaman kurulduğunun ölçümü.
  6. 06 Uzantılar Var olan bir tipe dışarıdan yöntem, hesaplanan özellik ve protokol uyumu eklemeyi ölçer; saklanan özelliğin eklenemeyeceğini ve tip düzeyindeki istisnayı gösterir.
  7. 07 Genellikler Tip parametreleri ve kısıtlarla tek bir gövdeyi birçok tipe uygular; tembel dizinin dönüştürücüsünü her erişimde, istekli map'inkini hemen ölçer.

03

Bellek ve İleri Özellikler

Otomatik referans sayımı, güçlü, zayıf ve sahipsiz referanslarla tutma döngülerinin kırılması, kapanışlarda yakalama, özellik sarmalayıcıları, sonuç kurucular ve katı eşzamanlılık denetimiyle yalıtım.

  1. 01 Otomatik Referans Sayımı Sınıf örneğinin son güçlü referansı bırakıldığı anda deinit'in çalıştığını dört bırakma yolunda ölçer ve ikinci bir referansın bu anı ertelediğini gösterir.
  2. 02 Güçlü, Zayıf ve Sahipsiz Referanslar İki sınıfın birbirini güçlü tutunca deinit'in hiç çalışmadığını, weak ve unowned ile döngünün kırıldığını ve unowned referansın nesne gittikten sonra okunamayacağını ölçer.
  3. 03 Kapanışlarda Yakalama Bir nesnenin kendi özelliğinde sakladığı kapanışın self'i yakalayınca deinit'i engellediğini, weak self yakalama listesiyle çözüldüğünü ve yakalama listesinin kapanış kurulurken bir kez değerlendirildiğini ölçer.
  4. 04 Özellik Sarmalayıcıları Özellik sarmalayıcısının wrappedValue okuyucusunun her erişimde çalıştığını, başlangıç değerinin bir kez kurulduğunu ve önbellekli bir sarmalayıcının anı ilk kullanıma çevirdiğini ölçer.
  5. 05 Sonuç Kurucular Kendi sonuç kurucumuzu yazar; seçilmeyen if ve else dalındaki ifadelerin hiç değerlendirilmediğini, for döngüsünün her elemanı değerlendirdiğini ve seçimin derlemede değil koşumda yapıldığını ölçer.
  6. 06 Eşzamanlılık Güvenliği Aktörün tembel özelliğinin eşzamanlı okumalarda bir kez kurulduğunu ve sonucu hiç beklenmeyen async let'in yine de değerlendirildiğini ölçer; Sendable ve @MainActor sınırlarını anlatır, kurs kapanışını yapar.

Bitirme sınavı

Swift Dili — Bitirme Sınavı

Hazırlanıyor

Bu kursun soru bankası henüz tamamlanmadı. Yeterli soru eklendiğinde sınav burada otomatik olarak açılır.

Aramak için yazmaya başlayın.

↑↓ ↵ Esc gezin · aç · kapat