Pull to refresh

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

jQuery
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
Tags:jquerytemplatejQuery TemplatesPureJSTemplateтестированиеMicrosoftMicrosoft чёрный властелин
Hubs: jQuery
Total votes 45: ↑31 and ↓14 +17
Views2K

Popular right now

Разработчик frontend JS / jQuery / Vue.js
to 150,000 ₽Хостинг-технологииRemote job
Frontend разработчик (JS, JQuery, React)
from 1,300 to 1,800 $InsightWhaleRemote job
Программист PHP
from 60,000 to 80,000 ₽Keep CalmRemote job
PHP-программист
from 100,000 to 180,000 ₽БИЗНЕС OnlineКазань
Web-разработчик 1С-Bitrix
from 90,000 to 140,000 ₽МультипасRemote job