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

Комментарии 52

Последний коммит в 2009 году — нет уж, плавали, знаем. Посвежее.
НЛО прилетело и опубликовало эту надпись здесь
Примеры кода были бы гораздо полезнее и уместнее, нежели скрины сайтов.
Да и сравнение возможностей и недостатков было бы кстати.
Об этом автор специально упомянул в конце: «Я не пытался приводить примеры, потому что множество ссылок на официальные страницы содержат демонстрации.» И это действительно так, если походить по ссылкам. А демонстрации с живыми примерами типа. как сделано в jsFiddle — гораздо удобнее, чем масса текстов, которые всё равно полными не будут.

Чего здесь не хватает — это ссылок на статьи, относящиеся к перечисленным шаблонизаторам. Даже на Хабре о части из них есть много интересных статей. Например:
Итератор в шаблонизаторе doT.js по объектам с фильтрацией 2013,
Как использовать Handlebars, 2014,
Сборка клиентских JavaScript шаблонов (Hogan) 2012,
Вышло обновление JavaScript шаблонизатора ECT 2012,
Навигация без перезагрузки используя expressjs, jade и History.js 2012
А зачем автор скриншоты вставил, если их тоже можно увидеть просто перейдя по ссылке?
Сервис публикации статей скриншоты поддерживает, а живые виджеты — нет (самое большее из кодов — я бы хотел увидеть перечисление синтаксических конструкций для каждого из 15). По рисункам главных страниц можно увидеть, насколько интересны первые страницы и, в частности, есть ли на них живые примеры. Иногда по скриншоту видно, что есть. Да и вступительные слова, которые всегда есть на главной, перепечатывать не надо.

Ещё, что могло бы быть интересным — это сравнительные бенчмарки шаблонизаторов. Но чтобы сделать массированный бенчмарк или хотя бы проверить имеющийся, нужно потратить несколько часов, а интерес к ним — весьма частичный. Как пример, могу привести случай в комментариях к статье "Пишем свой JavaScript шаблонизатор" — там сравнивались (Mustache, JsRender, Underscore JS, doT.js, MaskJS, последнее сравнение), когда привели по шаблонизаторам бенчмарк с неправильными показателями. Это меня заинтересовало, и я прошёлся по шаблонам, сделал исправления и проверки по 5-6 шаблонизаторам. Они проверяли какой-то простой частный шаблон. Но, всё же, зто — слишком частный вопрос и предмет отдельной статьи — сравнение скоростей.
Если для фронтенда, то лучше использовать nunjucks. Меньше и есть возможность прекомпиляции.
Ну я из всех названий в посте слышал только про Mustache да Handlebars. И то только названия, а не что это такое :) Вот и весьма удивился, что библиотека «на слуху» вообще не попала в список рассматриваемых.
То же самое можно сказать про DoT.js. К тому же, он и на бекенде, и с поддержкой модульности.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
doT плагин: plugins.jetbrains.com/plugin/7327?pr=webStorm

Он конечно не подхватывает scoupe данных, но хотя бы подсвечивает корректно исходник.
НЛО прилетело и опубликовало эту надпись здесь
Синтаксис Handlebars и Mustache поддерживается IDE от JetBrains из коробки (WebStorm, PhpStorm, IntellyJ)
jsrender недостаточно популярен, видимо )
Действительно странно, что он не упомянут, на мой взгляд, крайне удобная, быстрая и надёжная вещь.
Странно, что не упомянуты решения с поддержкой двухстороннего связывания, как то: rivets.js, ractive.js.
НЛО прилетело и опубликовало эту надпись здесь
Я пока имел практический опыт только с rivets, и, видимо, буду переходить на ractive, потому что подводных камней очень много.
НЛО прилетело и опубликовало эту надпись здесь
А Вы на размер файла ractive посмотрите.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
А BEM (http://bem.info/) почему стороной обошли?
Статья была бы еще лучше, если бы по каждому шаблонизатору был пример кода.
Было бы огромным плюсом к статье иметь сравнения по скорости отрисовки каждым шаблонизатором.
В копилку: Kendo UI (шаблонизатор часть фреймворка)
Просто для полноты: Meteor.js из коробки использует Spacebars, «вдохновлённый» Handlebars.
Кстати, с некоторых пор KendoUI стал бесплатным и опенсоурс =) www.telerik.com/download/kendo-ui-core. Правда не все там есть, но то что открыли ядро это уже круто.
Сменили лицензию с GPL3 на Apache, попутно выпилив из opensource: treeview, uploader, grid, editor и sheduler (это для меня самое важное). Так что теперь Kendo UI это OpenSource шаблонизатор с несколькими базовыми компонентами.
По моему субъективному опыту, на десятках очень сложных одностраничных приложний, от любых шаблонизаторов оказывалось больше тормозов, чем пользы. Я один такой? Что я не понимаю в этом мире?
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Обычно гораздо быстрее изменить одно-два свойства в DOM, чем ререндерить весь шаблон. Ну и да, конкатенация строк во многих браузерах иногда тоже прилично съедает. Плюс имхо DOM это более «программистский» путь, можно создать множество своих абстракций, использовать наследование, миксины, другие плюшки. Но это лишь моё мнение из «чужого монастыря» :)
ReactJS от Facebook оперирует не строками и очень шустрая штука.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Еще очень хорош paularmstrong.github.io/swig/

Удобно, когда и бекэнд(python+jinja, php+twig) и фронтэнд могут использовать одно и тоже.
Извините за оффтоп, речь пойдёт про Java.
К слову, первая картинка взята из документации FreeMarker. Это очень интересная альтернатива JSP, я пользуюсь с удовольствием.
Еще одни очень интересный шаблонизатор plates. Он не очень популярный но его идея привязки данных к HTML уникальна. Думаю что Knockout.js взял от туда много. Я сам ни когда им не пользовался, не удавалось но очень хотелось бы. При таком подходе, в шаблонах вообще нет ни чего лишнего и ни какого намека на <% или {{ все выглядит как просто голый HTML.
Раньше массовое изобретение шаблонизаторов было уделом php-программистов.
chibi каким местом шаблонизатор? Пролистал всю доку, судя по ней, это jQuery-подобная либа для траверсинга дома, навешивания обработчиков и AJAX. Proof me wrong.
Про nunjucks стоит сказать, что он почти полностью такой же, как шаблонизатор Jinja2 из Python, который очень популярен.
Также, как skim, slim и jade довольно близки.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории