Capcom, REX teknolojisinin parçası olan C# veri motoru RE:Dox'u açık kaynak yaptı
Capcom'un Teknik Araştırma Bölümü, yapılandırılmış veriyi okuyan, düzenleyen, biçimler arasında dönüştüren ve seri hale getiren .NET kütüphanesini Apache 2.0 lisansıyla GitHub'da yayımladı.

Capcom'un Teknik Araştırma Bölümü (CAPCOM CO.,LTD. Technical Research Division), RE:Dox adlı veri motorunu GitHub'da Apache 2.0 lisansıyla yayımladı. Deponun açıklamasına göre RE:Dox, .NET için geliştirilmiş yüksek performanslı, token tabanlı bir yapılandırılmış veri motoru ve Capcom'un yeni nesil oyun motorunun arkasındaki "REX" teknolojisinin temel bileşenlerinden biri. GameFromScratch bileşeni, Resident Evil, Street Fighter, Devil May Cry, Monster Hunter ve Dragon's Dogma gibi oyunları çalıştıran RE Engine'in açık kaynak yapılan önemli bir parçası olarak aktarıyor.
Ne işe yarıyor?
Depo, RE:Dox'un yalnızca bir JSON serileştiricisi olmadığını vurguluyor. Kütüphane yapılandırılmış veriyi sabit boyutlu tokenlardan oluşan kompakt bir DOM'a (ara temsile) çeviriyor; okuma, düzenleme, biçim dönüştürme, serileştirme, ters serileştirme ve otomatik paralel ters serileştirme işlerini bu yapısal dizin üzerinden yapıyor. Geliştiricilere göre RE:Dox, genelde birbiriyle çatışan üç hedefi bir araya getiriyor: System.Text.Json'ın JsonDocument'ındaki ayrıştırma hızı, JsonNode'un düzenlenebilirliği ve Newtonsoft.Json'ın esnekliği.
- JSON, JSON5, CBOR, MessagePack, INI ve kütüphanenin kendi ikili biçimi DOX çekirdeğe bağlı; TOML, XML, HTML ve CSV şimdilik önizleme bileşenleri.
- Dönüştürücüler (DataConverter<T>) belirli bir biçime değil, biçimden bağımsız DataReader ve DataWriter soyutlamalarına yazılıyor; aynı dönüştürücü birden çok biçimde kullanılabiliyor.
- Belge, ağır bir nesne ağacına çevrilmeden yerinde düzenlenebiliyor; JSON5 düzenlerken yorumlar korunabiliyor.
- System.Text.Json, Newtonsoft.Json ve DataContractJsonSerializer için uyumluluk katmanları var.
Performans
Depodaki ölçümlere göre (BenchmarkDotNet, .NET 10, AMD Ryzen Threadripper PRO 5975WX, Windows 11) RE:Dox, test veri setlerinde System.Text.Json'a göre sıralı ters serileştirmede yaklaşık 1,8 kata, otomatik paralel ters serileştirmede yaklaşık 2,8 kata, serileştirmede yaklaşık 1,6 kata kadar hızlı. canada.json örneğinde ayırdığı bellek yaklaşık 2,56 MB; System.Text.Json'da bu rakam yaklaşık 8,53 MB. Geliştiriciler bu oranların evrensel bir garanti olmadığını, sonuçların verinin yapısına, çalışma ortamına ve işlemciye göre değiştiğini de not düşüyor.
Nasıl kullanılır?
Kütüphane C# ile yazılmış ve .NET 10 ya da üstünü gerektiriyor. Çekirdek paket NuGet'te CAPCOM.REDox adıyla dotnet add package CAPCOM.REDox komutuyla kuruluyor; CBOR, MessagePack, INI gibi biçimler ayrı paketlerde. Depo, hız için tasarlanan DOX biçiminin güvenilmeyen kaynaklardan gelen verilerde kullanılmamasını, bunun yerine JSON gibi bir metin biçimi seçilmesini öneriyor. RE:Dox hâlâ etkin geliştirme aşamasında: API'ler, paket sınırları ve önizlemedeki biçimler ilk kararlı sürümden önce değişebilir.



0 yorum