Ana Sayfa

Datastar Hypermedia Framework için Common Lisp SDK

1 dk okuma

Datastar-CL, Datastar Hypermedia Framework'ün Common Lisp dilinde yazılmış bir SDK (Yazılım Geliştirme Kiti) uygulamasıdır. Datastar Mimari Karar Kaydı'na (ADR) mümkün olduğunca sadık kalınarak geliştirilen bu SDK, Common Lisp'e özgü ayarlamalarla temel işlevselliği sunmaya odaklanmıştır. Geliştiricilerin projelerine kolayca entegre edebilmesi için Quicklisp aracılığıyla yüklenebilir ve CLOS tabanlı bir SSE (Server-Sent Events) üreteci sınıfı kullanır. Bu üretecin Hunchentoot ve Clack (Hunchentoot ve Woo arka uçları ile) gibi popüler Common Lisp web sunucuları ve uygulama ortamlarıyla uyumlu iki alt sınıfı bulunmaktadır.

SDK, SSE bağlantıları için farklı sunucu yaklaşımlarını desteklerken, özellikle Woo ile Clack kullanıldığında SSE bağlantılarının Woo'nun çalışan iş parçacığı sayısıyla sınırlı olduğuna dikkat çekmektedir. Bu durum, çok sayıda SSE bağlantısı gerektiren uygulamalar için Hunchentoot'un veya bir yoklama (polling) yaklaşımının tercih edilmesini önerir. Hunchentoot varsayılan olarak "push" yaklaşımını kullanırken, Clack+Woo genellikle "poll" yaklaşımına yönelir. JZON kütüphanesi JSON ayrıştırma için kullanılır ve yakın zamanda zstd sıkıştırma desteği de eklenmiştir.

Datastar-CL'in kullanımını gösteren Data SPICE (güneş sistemi simülasyonu) ve Horizons JPL API explorer gibi örnek projeler mevcuttur. Test dizini, desteklenen sunucuların nasıl kurulacağını ve SDK'nın farklı arka uçlarla nasıl kullanılacağını gösteren pratik örnekler sunar. Özellikle SSE test dosyası, bağlantı kesintileri gibi önemli uç durumları da kapsayarak geliştiricilere yol göstermektedir. Proje, Datastar'ın MIT lisansını takip etmektedir.

İçgörü

Bu SDK, Common Lisp geliştiricilerine modern hypermedia uygulamaları oluşturma ve gerçek zamanlı veri akışı sağlama yeteneği sunarak, ekosistemin web geliştirme kapasitesini genişletiyor.

Kaynak