Swift, Apple tarafından 2010 yılından bu yana geliştirilen ve diğer dillerden (Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, D… gibi) kavramları bünyesinde barındıran bir programlama dilidir. O zamandan beri Apple Swift'i giderek daha fazla kullandı. Gömülü cihazlar ve mikrodenetleyiciler için Swift, WWDC 2024 geliştirici konferansında tanıtıldı.
Duyuru
Swift şu ana kadar Apple tarafından sunucular, masaüstü bilgisayarlar ve mobil cihazlar için kullanılıyor; Artık mikrodenetleyicilere ve akıllı ev cihazlarına da girecek. Normal uygulamaların yanı sıra, daha önce C ve C++'ın etki alanı olan çekirdek kodu ve kütüphaneler için de uygun olmalıdır. Güvenlik özellikleri ve bellek yönetimi hataları önlemeyi amaçlamaktadır. Daha fazlasını öğrenmek istiyorsanız Apple'ın Swift vizyonuna göz atabilirsiniz.
Gömülü Swift, daha büyük mimarilerdeki çoğu Swift dili yapısını destekler. Embedded Swift şu ana kadar ESP32-C6, Raspberry Pi RP2040, STM32F7 ve nRF52840 mikro denetleyicilerini destekliyor. Platformların örnekleri GitHub'da zaten mevcut. En popüler destek Espressif ESP32-C6 RISC-V mikrokontrolcüsü içindir. Mikrodenetleyicilerdeki Python veya Basic'ten farklı olarak Swift'in derlenmesi gerekir; bu da C/C++ tabanlı bir geliştirme sistemi ve donanım üreticisinin geliştirme kitini gerektirir; Apple'ın internet sitesinde yer alan videoda Espressif SDK'sının, Espressif'in SP32-C6 DevKitC-1 geliştirme kartıyla birlikte kullanıldığı görülüyor.
İkinci örnekte ayrıca mikrokontrolörlerdeki klasik “Helloworld” Swift aracılığıyla kontrol etmek için kart üzerindeki LED kullanılıyor. Bu amaçla, SDK-C API'lerinin Swift'de kullanılabilir olmasını sağlayan köprüleme başlığı (BridgingHeader.h) kullanılır. Bu, kartın özelliklerine doğrudan donanım aracılığıyla erişebileceğiniz ve LED'i yakabileceğiniz anlamına gelir. Tabii ki, şu ana kadar bu çok zarif değil ve aynı zamanda hataya açık, dolayısıyla donanımı başka bir katmana (veya kitaplığa) soyutlayabilirsiniz. Ne yazık ki, yeni bir programlama diliyle hazır kitaplıklara sahip değilsiniz ve çok fazla şeyi kendiniz yazmanız veya diğer geliştiricilerin bunu yapmasını ummanız gerekiyor. Videoda gösterildiği gibi bunu Matter C++ API'si için yapabilir ve ardından bir IoT cihazı (videodaki “akıllı” IoT LED lambası) geliştirebilirsiniz.

(Resim: Apple Inc.)
Bu, Embedded Swift'in tek hedef grubunun, Apple evrenine uygun cihazları programlamak isteyen (veya buna ihtiyaç duyan) iflah olmaz Apple programcıları olduğu anlamına gelir. Yapımcılar ve sıradan programcılar C/C++, Arduino, MicroPython ve hatta Basic'e sadık kalacaklar. Son iki dil de yorumlanır ve eğer hız önemli değilse programları hızlı bir şekilde karta aktarmak için kullanılabilirler.
ESP32-CAM üreticiler arasında popülerdir: kompakt ancak güçlü bir ESP32 mikro denetleyici, video işlevine sahip bir kamera modülü ve bir microSD kart yuvası ile donatılmıştır. Karttan en iyi şekilde yararlanmak istiyorsanız donanımın dahili bileşenlerini ve programlama arayüzlerini incelemeye değer. 80 sayfalık Make Special, okuyucuları elinden alır ve birlikte verilen 2 MP kamera modülü ve programlama adaptörüne sahip ESP32 CAM kartı sayesinde ilk projelerinize hemen başlayabilirsiniz.
(gaw)
Bir yanıt yazın