10th fev 2009
Benchmark de bibliotecas javascript
Continuando os posts sobre bibliotecas javascript (primeiro foi uma enquete perguntando qual a mais utilizada, depois uma lista de sites brasileiros divididos pela biblioteca que utilizam), vale a pena citar o benchmark – apelidade de SlickSpeed – com as principais bibliotecas, visando mensurar o tempo que cada uma leva usando os seus seletores de elementos.
Esse teste foi feito seguindo padrões da W3C, pela DOM Assistant, que é a criadora da biblioteca homônima – e não muito conhecida. No teste, foram avaliadas além dela, a jQuery, Prototype, Mootools, ExtJS, Dojo e YUI. Foram usados vários tipos de seletores, dos mais básicos até os que contém as regras de CSS3 mais avançadas.
O link para ver o teste rodando fica em http://www.domassistant.com/slickspeed
No resultado geral (que soma o tempo de todas as seleções) do teste que fiz aqui, podemos ver que a DOMAssistant é a mais rápida. Faz todas as seleções em 56ms, enquanto que a que chega mais perto é a Dojo (180ms), e mais longe jQuery, Mootools, Prototype, YUI.
Pelo que pude perceber, quanto maior a biblioteca é/ mais genérica, menos performática ela é nesse quesito de seletores. Não dá pra levar em conta apenas esse teste, pois a DOMAssistant me parece ter muito menos recursos do que as outras. Tudo depende de uma análise no seu projeto de qual será a necessidade.

Nunca ouvi falar desse DOM Assistant, as outras conheço mas só uso mesmo a JQuery. Estou para testar a prototype a tempos…
Diogo, parece que essa biblioteca foi concebida por um dos atuais cabeças da jQuery – inclusive parece que reaproveitaram parte da engine dela na versão 1.3 da jQuery!
[]s!
Show! Pelo que li, a diferença de performance da nova versão na JQuery é grande.
Diogo, vale a pena fazer um teste, também, com browsers diferentes.
Parece que no Safari e no Chrome o benchmark dá um resultado bem melhor para as bibliotecas grandes!
Aqui no opera deu DOMAssistant(52), depois ExtJS(120), Dojo(177) e JQuery(188). O resto acima de 250.