Как стать автором
Обновить

Тестирование производительности jQuery Templates

Время на прочтение2 мин
Количество просмотров2.2K
image Как мы все знаем Microsoft подобрела и выпустила некоторые свои вещи под свободной лицензией MIT. В числе них оказались и их новые плагины для jQuery. Плагины оказались мощными настолько, что «независимое» сообщество решило включить, так давно просимый функционал шаблонов, в основную библиотеку (тут). Нонсенс! Фурор! Или… Или есть какие-то иные причины? Не будем это выяснять, а лучше посмотрим на сравнительные тесты данной библиотеки, и подумаем, нужно ли это нам на самом деле.



Всё началось с того, что я попробовал библиотеку шаблонизации в своём новом функционале. Я был обескуражен. Система была настолько тормозной, что я полез смотреть, не засел ли в процессах вирус, или иное демоническое существо. Всё оказалось чистым, и тогда я решил сравнить производительность библиотеки с другими вариантами.

Тестирование

Итак встречаем конкурсантов
  • Microsoft Template: страница
  • PureJSTemplate: остатки на plugins.jquery.com
  • Кривые руки: Добавление span по одному: $("<span/>").text(..).appendTo(..)
  • Прямые руки: Добавление строки span сформированных через склейку массива

Метод тестирования
  1. Забить в div тысячу span'ов
  2. Сравнить время
  3. Сделать выводы
  4. ???
  5. Profit

Анализируемые браузеры
  • Internet Explorer 8
  • Mozilla 3.6.12
  • Chrome 8. Как быстро летит время, помню его еще в первой версии, а вон уже IE догнал, скоро оперу перегонит.
  • Opera 10.63

Результаты

Результаты

Выводы
  • Новый шаблонизатор от MS в среднем в 29 раз медленнее, если бы всё делать ручками.
  • В случае с Оперой, он сравним, в производительности, с кривыми руками, за которые, имхо, надо гнать взашей…
  • Существующий PureJSTemplate в некоторых тестах оказался сравним с выпрямленными руками. А в некоторых случаях и быстрее, что, в общем, то, странно.
  • PureJSTemplate в IE8 показывает очень странные результаты, по сравнению с другими плагинами.
ИМХО выводы
  • Абсолютным победителем, во всех тестах признан Chrome, кто бы сомневался.
  • IE8, на удивление, сравнимо с Оперой. Лично я в шоке.
  • Понимая свою паранойю, я думаю, что Microsoft намеренно выпустила тормознутый продукт, для того чтобы запугать рынок AJAX приложений.
  • Не надо мне говорить, про удобство и разделение дизайна и кода. Всему есть предел. Доработали бы лучше PureJSTemplate чтобы не нужно было создавать для каждого шаблона свой textbox, и чтобы не обязательно указывать, куда мне выводить полученный результат.

PS Проверить на своем компьютере можно тут. Ну или протестировать на jsfiddle.net

PSS Разместил тест на jsperf.com
Теги:
Хабы:
Всего голосов 45: ↑31 и ↓14+17
Комментарии46

Публикации

Истории

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
19 сентября
CDI Conf 2024
Москва
20 – 22 сентября
BCI Hack Moscow
Москва
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
24 сентября
Astra DevConf 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн