6 Punkte von samchon 2023-08-06 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Theoretische Erklärung, warum Typia unter den TS-Runtime-Validatoren am schnellsten ist
  • Dynamische Sprachen wie JS behandeln alle Objekte als HashMap<string, Object>
    • Deshalb lassen sich beliebige Keys hinzufügen und entfernen
    • Im Vergleich zu einer statischen Klassenstruktur ist das jedoch langsamer
    • Der Grund ist, dass eine HashMap ihre Elemente intern in verketteten Listen speichert
  • Die V8-Engine besitzt eine sogenannte Hidden-Class-Optimierung
    • Wenn es keine dynamisch gesteuerten Elemente zu geben scheint, wird keine HashMap verwendet
    • Stattdessen wird in eine statische Klassenstruktur umgewandelt und diese verwendet
    • Bei statischen Klassen liegen die Member im Speicher zusammenhängend, was die Performance verbessert
  • Typia erzeugt den Validierungscode für jeden Typ statisch (AoT-Kompilierung)
  • Andere Runtime-Validatoren verwenden dynamische Logik (for key in obj)
  • Das ist der Grund, warum Typia schneller ist als andere Runtime-Validatoren

Noch keine Kommentare.

Noch keine Kommentare.