Вирішив провести невелике дослідження на тему продуктивності JavaScript-фреймворків в різних браузерах…

В якості інструменту узятий тест SlickSpeed, у списку випробовуваних виявилися наступні фреймворки:

  • MooTools 1.2
  • JQuery 1.2.6
  • Prototype 1.6.0.2
  • YUI 2.5.2 Selector beta
  • Dojo 1.1.1

Судити про популярність даних фреймворків можна за графіком:

А так само список браузерів:

  • Internet Explorer 5.5
  • Internet Explorer 6.0
  • Internet Explorer 7.0
  • Internet Explorer 8.0 B2
  • Opera 9.62
  • Mozilla Firefox 3.0.4
  • Safari 3.1.2
  • Google Chrome 0.4.154

IE 5.5 – в ньому все фреймворки показували дивні результати, а jQuery відмовився працювати – він сприйняв лише пошук по Id.
IE 8.0 – сируватий, деякі запити навіть їли все процесорний час, Dojo і YUI повертали помилки по багатьом запитам.

Результат тестування:

MooTools
jQuery
Prototype
YUI
Dojo
Avg(ms)
Firefox 3.0.4

Opera 9.62

Google Chrome

Safari 3.1.2

Internet Explorer 5.5

Internet Explorer 6.0

Internet Explorer 7.0

Internet Explorer 8.0

Avg

172181309430128244
210120184391115204
12584438347105219
135131224497119221
81104035367210452390
10618475085392912652437
527414223614066431045
567326178110700936
45130017861467488

Ну а тепер слайди – зведений графік всіх доступних мені браузерів:

Відкинемо, дивний по своїй суті, браузер IE – щоб трохи краще розгледіти, що відбувається:

Як бачимо – з правильними браузерами найкраще працює Dojo (116,75 ms) – стабільно швидко – але Safari c у нього виникають помилки. Зовсім трохи відстав від нього jQuery (129ms), потім Mootools (160,5 ms), Prototype (288,75 ms) і YUI (416,25 ms).

Якщо ж загострити свою увагу на IE то ми побачимо наступний графік:

Тут найкраще себе показав jQuery (хоча і відмовився працювати в IE 5.5), другий – MooTools, Dojo опинився на 3-му місці, і огидно показав себе при роботі в IE 8.0b2.

Якщо ж підбивати підсумок про найшвидшому JavaScript фреймворку – то перемагає jQuery (в основному за рахунок творінь MS, бо вони виявилися йому по зубах).

Якщо ж міряти продуктивність браузерів то отримаємо наступний рейтинг:

  • Opera 9.62 (204ms)
  • Google Chrome 0.4.154 (219,8 ms)
  • Safari 3.1.2 (221,2 ms)
  • Mozilla Firefox 3.0.4 (244ms)
  • Internet Explorer 8.0 B2 (936ms) – йдуть вірною дорогою
  • Internet Explorer 7.0 (1045,2 ms)
  • Internet Explorer 5.5 (2390,75 ms)
  • Internet Explorer 6.0 (2437,4 ms)
  • P. S. Якщо ж Вас бентежить вибір фреймворків – то можете поглянути на ресурс http://lusever.ru/css-selectors/, якщо Вам і цього мало – то тоді вже самі розгортайте бібліотеку SlickSpeed і тестуйте – та не забудьте про результаті розповісти.

    P. P. S. Так само подібне дослідження проводив Юрій Дроздов на початку цього року, так що можете порівняти прогрес в розвитку фреймворків…