6 puan yazan samchon 2023-08-06 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Typia'nın TS runtime validator'ları arasında neden en hızlı olduğunu teorik olarak açıklıyor
  • JS gibi dinamik dillerde tüm nesneler HashMap<string, Object> şeklindedir
    • İstenilen herhangi bir anahtarın eklenip çıkarılabilmesi bunun sayesinde mümkün olur
    • Ancak bunun karşılığında statik sınıf yapısına kıyasla daha yavaştır
    • Çünkü HashMap, öğeleri dahili olarak linked list içinde saklar
  • V8 Engine'de Hidden Class Optimization denen bir özellik vardır
    • Dinamik olarak kontrol edilen öğe olmadığı anlaşılırsa HashMap kullanmaz
    • Bunun yerine statik sınıf yapısına dönüştürerek kullanır
    • Statik sınıflarda üyeler bellekte ardışık yer aldığı için performans açısından avantajlıdır
  • Typia, her tip için doğrulama kodunu statik olarak üretir (AoT compilation)
  • Diğer runtime validator'lar ise dinamik mantık kullanır (for key in obj)
  • Typia'nın diğer runtime validator'lardan daha hızlı olmasının nedeni budur

Henüz yorum yok.

Henüz yorum yok.