2 puan yazan GN⁺ 2026-03-28 | 1 yorum | WhatsApp'ta paylaş
  • Dil, standart kütüphane, derleme sistemi ve platform desteği genelinde genişlemeler sunarak geliştirici deneyimini iyileştiriyor
  • Başlıca değişiklikler arasında güçlendirilmiş C birlikte çalışabilirliği, resmî Android SDK’sının eklenmesi, gömülü ortam iyileştirmeleri ve DocC belgelendirme aracının genişletilmesi yer alıyor
  • Swift Package Manager, birleşik derleme motoru ve önceden derlenmiş Swift Syntax desteği ile platformlar arası derleme tutarlılığını artırıyor
  • Swift Testing, uyarı düzeyinde sorun kaydı, test iptali ve görsel ekleme gibi yeni özelliklerle test esnekliğini güçlendiriyor
  • Android SDK’nın resmî olarak yayımlanması, Swift’in platformlar arası geliştirme alanını genişletiyor ve Kotlin/Java uygulamalarıyla entegrasyonu mümkün kılıyor

Swift 6.3’teki başlıca güncellemeler

  • Swift 6.3, dil, standart kütüphane, derleme sistemi ve platform desteği genelinde genişletilmiş yetenekler sunuyor
  • Güçlendirilmiş C birlikte çalışabilirliği, resmî Android SDK’sının eklenmesi, gömülü ortam iyileştirmeleri ve DocC belgelendirme aracının genişletilmesi temel değişiklikler arasında
  • Hedef, geliştirici deneyimini iyileştirmek ve platformlar arası geliştirme entegrasyonunu güçlendirmek

Dil ve standart kütüphane

  • C birlikte çalışabilirliği

    • Yeni @c özniteliği sayesinde Swift fonksiyonları veya enum’lar C koduna açılabiliyor
    • @c(MyLibrary_callFromC) biçimiyle özel C bildirim adı belirtilebiliyor
    • @c ile @implementation birlikte kullanıldığında, C header’ında bildirilen fonksiyonlar Swift içinde uygulanabiliyor
    • Bu kombinasyonda Swift, mevcut C bildirimiyle eşleşmeyi doğruluyor
  • Modül ad seçicileri (Module Name Selectors)

    • Aynı adlı API’ler birden fazla modülden içe aktarıldığında, ModuleA::getValue() biçiminde modülü açıkça belirterek çağrı yapılabiliyor
    • Swift::Task sözdizimiyle eşzamanlılık (concurrency) ve string işleme API’lerine erişilebiliyor
  • Kütüphane API performans kontrolü

    • @specialize: Generic API’lerde belirli tipler için önceden özelleştirilmiş uygulama sağlıyor
    • @inline(always): Inlining’i zorlayarak fonksiyon gövdesini çağrı noktasında genişletiyor
    • @export(implementation): ABI kararlı kütüphanelerde fonksiyon uygulamasını dışa açarak ek optimizasyonlara izin veriyor
    • İlgili öneriler Swift Evolution panosunda incelenebilir

Paket ve derleme iyileştirmeleri

  • Swift Package Manager’a Swift Build birleşik önizlemesi eklendi; bu sayede tüm platformlarda tutarlı bir derleme deneyimi sunuluyor
    • Birleşik derleme motoru ile platformlar arası geliştirme tutarlılığı güçleniyor
    • Kullanıcılar paketlerinde doğrudan test yapıp sorun bildirebiliyor
  • SwiftPM 6.3’ün başlıca iyileştirmeleri
    • Prebuilt Swift Syntax desteği: Yalnızca makrolara yönelik kütüphanelerde önceden derlenmiş swift-syntax binary’leri kullanılabiliyor
    • Esnek belge devralma kontrolü: Sembol grafiği üreten komut tabanlı eklentilerde devralınan belgelerin dahil edilip edilmeyeceği kontrol edilebiliyor
    • Paket özelliklerini keşfetme: swift package show-traits komutuyla bir paketin desteklediği özellikler görülebiliyor
    • Ayrıntılar SwiftPM 6.3 sürüm notlarında yer alıyor

Çekirdek kütüphane güncellemeleri

  • Swift Testing

    • Uyarı düzeyinde sorun kaydı: Issue.record(..., severity: .warning) ile testi başarısız saymadan yalnızca uyarı gösterilebiliyor
    • Test iptal özelliği: try Test.cancel() ile çalışan testler ve alt görevler durdurulabiliyor
    • Görsel ek desteği: Apple ve Windows platformlarında testlere görsel eklenebiliyor
    • İlgili öneriler: ST-0012, ST-0013, ST-0014, ST-0015, ST-0016, ST-0017, ST-0020
  • DocC

    • Markdown çıktı desteği: --enable-experimental-markdown-output seçeneğiyle Markdown belgeleri üretilebiliyor
    • Sayfa başına statik HTML içerik: `` içine özet HTML eklenerek arama motoru görünürlüğü ve erişilebilirlik iyileştiriliyor
    • Kod bloğu açıklamalarının genişletilmesi: nocopy, highlight, showLineNumbers, wrap gibi yeni biçim seçenekleri eklendi
    • --enable-experimental-code-block-annotations seçeneğiyle etkinleştirilebiliyor

Platformlar ve ortam

  • Embedded Swift

    • Güçlendirilmiş C birlikte çalışabilirliği, iyileştirilmiş hata ayıklama, linkage modelinin olgunlaşmasında ilerleme gibi çok sayıda iyileştirme içeriyor
    • Ayrıntılar “Embedded Swift Improvements coming in Swift 6.3” blog yazısında bulunabilir
  • Android

    • İlk resmî Swift SDK for Android yayımlandı
    • Swift ile yerel Android uygulamaları geliştirmek ve Swift paketlerini Android için derlemek mümkün hale geliyor
    • Swift Java ve Swift Java JNI Core aracılığıyla Kotlin/Java uygulamalarıyla entegrasyon sağlanabiliyor
    • Bu adım, Swift’in platformlar arası geliştirme kapsamını genişletmesi açısından önemli bir kilometre taşı olarak değerlendiriliyor
    • Başlangıç kılavuzu “Getting Started with the Swift SDK for Android” belgesinde sunuluyor

Sonraki adımlar

  • Swift 6.3 toolchain’i Install Swift sayfasından kurulabiliyor
  • Geliştiriciler yeni özellikleri hemen deneyip geri bildirim verebilir

1 yorum

 
GN⁺ 2026-03-28
Hacker News görüşleri
  • Swift için böyle harika bir sürüm görmek sevindirici
    v3'ten sonra kullanmadım ama 2015~17 civarında Swift'in Python'ın yerini alması mümkün görünüyordu
    Çünkü basit, hızlıydı ve C/C++ ekosistemiyle de iyi uyum sağlıyordu. IBM'in sunucu tarafını zorladığı dönemde gerçekten potansiyeli vardı
    Ama Apple topluluğu yeterince içine çekemedi ve sonuçta Swift Apple'a özel bir dil olarak kaldı. Şimdi karmaşıklığı da C++ seviyesine çıkmış durumda

    • Üniversite yıllarında freelance çalışırken Swift ile web backend yazmıştım. Heroku buildpack ile deploy ediyordum; oldukça eğlenceli bir dönemdi
      Swift'i seviyorum ama Apple ekosisteminin dışında hâlâ kritik eşiği aşamamış gibi geliyor. Sonunda geçen yıl TypeScript'e geçtim
    • En güncel Swift 6.3 ile bile Apple platformları dışında geliştirme yapmak hâlâ sancılı
      Her şeyden önce, yığına Apple gibi bir kapı bekçisini gönüllü olarak dahil etmek isteyen çok az kişi vardır diye düşünüyorum
    • Google da bir ara TensorFlow'u Python'dan Swift'e taşımaya çalışmıştı
      TensorFlow Swift projesi
    • Python 3'ün bile Python'ın yerini alması uzun sürdü
    • Python, etkileşimli yorumlayıcısı sayesinde iteratif geliştirme ve Jupyter Notebook içinde güçlü
      CircuitPython da gömülü prototipleme için faydalıydı. Swift bu alanları tam olarak yakalayamadı
      Üstelik Swift Linux'a 2016'da, Windows'a 2020'de, FreeBSD'ye ise ancak 2025'te gelebildi
      2010'ların ortasında Go, Julia, Rust, TypeScript, Solidity gibi yeni diller sel gibi geliyordu; herkesin en fazla bir iki tanesini öğrenmeye vakti vardı
  • Swift'in tüm stack'i kapsayan bir dil olmasını umuyordum ama gerçek öyle olmadı
    Apple'ın fırsatı boşa harcadığı hissi var

    • Ben gerçekten tüm stack'te Swift kullanıyorum
      Örneğin ClearSurgery, Linux'tan gerçek zamanlı bileşenlere kadar tamamen Swift ile yazılmış durumda
  • Geçen hafta xv6-riscv işletim sistemini Zig, Nim, LISP ve Swift'e port ettim
    Embedded Swift'teki ilerleme sayesinde yüksek üretkenlik sunan bir dil gibi hissettirdi. Bellek erişimini saran soyutlamalar da temizdi
    Ama derleme hızı o kadar yavaştı ki sonunda Nim'e odaklandım

    • Nim'i duymayalı uzun zaman oldu; neden onu seçtiğini merak ediyorum
    • Acaba McCarthy LISP'i mi kastediyorsun diye soruyorum
  • Swift'in derleme hızı iyileştirmelerinden bahsedilmemesi üzücü
    Rust'tan bile yavaş derleme, geliştirme deneyimini ciddi biçimde düşürüyor

    • Ben de yakın zamanda bir Swift projesi yaptım; bağımlılık arttıkça derlemenin ne kadar yavaşladığını görünce şaşırdım
      Go'nun hızlı build'lerine alıştıysan Swift'te iteratif geliştirme işkenceye dönüşüyor. Dilin kendisi harika ama geri bildirim döngüsü çok yavaş
  • Swift 6.3 ile ilk kez Android için resmi SDK dahil edildi

    • Windows ve Linux için de var mı diye merak ediyorum
      Windows için 5 yıl önceki blog yazısı,
      Linux için de GNOME rehberi var
      Eski OpenSTEP gibi, tek sefer geliştirip birden çok platforma dağıtmak mümkün olsa güzel olurdu
    • Sunucu tarafı Swift'ten bile daha az kullanılacak gibi görünüyor
  • noncopyable türlerdeki iyileştirmeler bu sürümün en az değer verilen kısmı
    Artık Swift'te benzersiz sahiplik modellemesini çok daha gerçekçi biçimde yapmak mümkün

  • Swift 6.3'teki @c niteliği sayesinde Swift fonksiyonlarını C koduna açmak mümkün oldu
    Ama bunun neden bu kadar geç eklendiği soru işareti. Önce C++ birlikte çalışabilirliğinin gelmesi garip bir önceliklendirme gibi duruyor

    • Aslında daha önce alt çizgili bir nitelik olarak zaten vardı
    • C++ birlikte çalışabilirliği, Apple'ın mevcut düşük seviyeli kod tabanlarını içine alması için önemliydi
      Buna karşılık Swift'i C'ye açmak FFI spagettisi yaratıyor ve enum, sahiplik, null işleme gibi alanlarda ABI hataları üretmeye açık oluyor
      Özellikle işin içine closure girerse çağrı kuralı bozulabiliyor ve bir günü debug'a gömebiliyorsun
    • ObjC'ye açma özelliği zaten vardı; bu yüzden önceliği düşüktü
    • Uzun zamandır deneysel olarak kullanılabiliyordu, şimdi sadece resmileşti
  • Eskiden Swift ile C programları için dylib üretirken @cdecl kullanmak gerekiyordu; artık bunun resmi olarak desteklenmesi sevindirici

  • Pazarlama dışındaki gerçek değişiklikler CHANGELOG ve
    Swift Evolution öneri listesi içinde görülebilir
    6.3 daha çok entegrasyon işleri odaklı bir sürümdü — stdlib, C/C++, swift-java birlikte çalışabilirliği, build sistemi vb.
    SPM giderek Xcode özelliklerini içine alıyor; yeni swift-build motoru ve prebuilt modüller de deneysel durumda
    Ama SPM ile Xcode etkileşimi hâlâ dengesiz ve iç karmaşıklık büyüyor
    Dilin kendisindeki ilerleme daha sessiz olsa da yaşam süresi denetimi ve concurrency renklendirmesi gibi derin yapısal çalışmalar sürüyor
    Birden çok OS, cihaz ve CI ortamı birbirine dolanmış durumda; bu yüzden Swift geliştiricileri sürekli değişim içinde denge kurmak zorunda kalıyor

    • Swift 6.4'te swift-build varsayılan olacak
      resmi forum gönderisine göre,
      Xcode bunu zaten içeride kullanıyor ama performans sorunları ciddi
      ilgili tartışma da var.
      SPM ile Xcode aynı motoru kullanırsa iyileşebilir ama büyük beklentim yok
  • Güncel Swift sürümünde toolchain durumunun nasıl olduğunu merak ediyorum. Swift Lint ve Swift Format destekleniyor mu, bilmek istiyorum
    Modern bir dilde yerleşik formatter ve önerilen lint kuralları olmalı. Sadece dil değil, tüm ekosistem önemli

    • Artık iki araç da varsayılan olarak dahil geliyor. Dış bağımlılık olmadan doğrudan swift format ve swift format lint ile kullanılabiliyor