TypeScript için yansıma gerektirmeyen bağımlılık enjeksiyon aracı Nonna tanıtıldı
Öne çıkanlar
- Nonna, reflect-metadata kütüphanesine ihtiyaç duymadan sıfır çalışma zamanı bağımlılığıyla çalışıyor.
- AOT derleyicisi, TypeScript TypeChecker kullanarak kurucu belirteçlerini doğrudan derleme aşamasında çözümlüyor.
- Node.js, Deno, Bun ve uç bilişim ortamlarını tek bir çekirdekle yerel olarak destekliyor.
Modern JavaScript ve TypeScript projeleri için geliştirilen bağımlılık enjeksiyon kütüphanesi Nonna kullanıma sunuldu. Araç, geleneksel bağımlılık enjeksiyonu çözümlerinde sıklıkla başvurulan reflect-metadata gereksinimini ve yansıma maliyetini tamamen ortadan kaldırıyor. Derleme zamanında çalışan AOT derleyicisi sayesinde kurucu belirteçlerini önceden çıkaran sistem, Node.js, Deno, Bun ve uç sunucu ortamlarında herhangi bir kod değişikliği olmadan çalışıyor.
Kütüphane mimarisi, çözümleme mantığını derleme ve başlatma aşamasına aktararak çalışma zamanı yükünü en aza indirmeyi amaçlıyor. Tamamen sıfır bağımlılık ilkesiyle hazırlanan paket, standart Web API'leri ile node:async_hooks kütüphanesini kullanıyor. Sistem bünyesinde yerleşik istek kapsamı desteği, OnInit ve OnDestroy yaşam döngüsü kancaları ile eş zamanlı ve asenkron fabrika sağlayıcıları barındırıyor.
Performans optimizasyonları kapsamında Symbol tahsisleri yerine tamsayı anahtarlı kayıtlar ve bellek içi önbelleğe alınmış bağımlılık meta verileri tercih ediliyor. İstek kapsamı kullanılmayan durumlarda AsyncLocalStorage tamamen atlanırken döngüsel bağımlılık takibi için özel bir yığın mimarisi devreye giriyor. Proje, popüler ön yüz kütüphaneleri ve çeşitli sunucu çalışma zamanlarıyla doğrudan uyum sağlıyor.
Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.