Как мы все знаем Microsoft подобрела и выпустила некоторые свои вещи под свободной лицензией MIT. В числе них оказались и их новые плагины для jQuery. Плагины оказались мощными настолько, что «независимое» сообщество решило включить, так давно просимый функционал шаблонов, в основную библиотеку (тут). Нонсенс! Фурор! Или… Или есть какие-то иные причины? Не будем это выяснять, а лучше посмотрим на сравнительные тесты данной библиотеки, и подумаем, нужно ли это нам на самом деле.
Всё началось с того, что я попробовал библиотеку шаблонизации в своём новом функционале. Я был обескуражен. Система была настолько тормозной, что я полез смотреть, не засел ли в процессах вирус, или иное демоническое существо. Всё оказалось чистым, и тогда я решил сравнить производительность библиотеки с другими вариантами.
Итак встречаем конкурсантов
Метод тестирования
Анализируемые браузеры
PS Проверить на своем компьютере можно тут. Ну или протестировать на jsfiddle.net
PSS Разместил тест на jsperf.com
Всё началось с того, что я попробовал библиотеку шаблонизации в своём новом функционале. Я был обескуражен. Система была настолько тормозной, что я полез смотреть, не засел ли в процессах вирус, или иное демоническое существо. Всё оказалось чистым, и тогда я решил сравнить производительность библиотеки с другими вариантами.
Тестирование
Итак встречаем конкурсантов
- Microsoft Template: страница
- PureJSTemplate: остатки на plugins.jquery.com
- Кривые руки: Добавление span по одному: $("<span/>").text(..).appendTo(..)
- Прямые руки: Добавление строки span сформированных через склейку массива
Метод тестирования
- Забить в div тысячу span'ов
- Сравнить время
- Сделать выводы
- ???
- 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