- Explica teoricamente por que o Typia é o mais rápido entre os validadores de runtime para TS
- Linguagens dinâmicas como JS tratam todos os objetos como
HashMap<string, Object>
- É graças a isso que dá para adicionar e remover qualquer chave
- Em compensação, é mais lento do que uma estrutura de classe estática
- Porque um
HashMap armazena internamente os elementos em listas ligadas
- O motor V8 tem algo chamado Hidden Class Optimization
- Se parece não haver elementos controlados dinamicamente, ele não usa
HashMap
- Em vez disso, converte e usa uma estrutura de classe estática
- Classes estáticas têm membros contíguos na memória, o que favorece o desempenho
- O Typia gera estaticamente o código de validação para cada tipo (compilação AoT)
- Outros validadores de runtime usam lógica dinâmica (
for key in obj)
- Esse é o motivo de o Typia ser mais rápido do que outros validadores de runtime
Ainda não há comentários.