Я работаю над большим веб-приложением на основе Java, он был создан за последние 5 лет - пользовательский интерфейс нуждается в капитальном ремонте/в значительной степени переписан. Мы изучаем доступные инструменты/библиотеки/рамки UI для использования и встретили dust.js в качестве опции для шаблонов.
Вопросы: Мне интересно узнать, что пользователи dust.js думают об этом:
- Успешно ли это?
- Легко ли использовать?
- Достаточно ли это документально оформлено?
- Поддерживается ли поддержка сообщества? (только 6 вопросов на ST помечены "dust.js" !)
- Каковы плюсы и минусы по сравнению с другими инструментами шаблонов, такими как Underscore templating, Google Closure Templates, Handlebars и Mustache.
- Существуют ли какие-либо проблемы с его использованием структуры структуры MV *, например Backbone.js (онлайн-книга)?
Немного фона:
-
Почему мы заинтересованы в dust.js: следующие сообщения LinkedIn вначале обратили наше внимание на это:
- Выход из JSP в пыли: перемещение LinkedIn в шаблоны клиентской панели dust.js
-
Клиентская настройка шаблонов: усы, рули, dust.js и т.д.
Вторая из двух должностей очень хорошо отвечает на вопрос 5, но, как из LinkedIn, очень мало результатов от Google, детализирующей систему шаблонов, или подразумевают, что это популярный выбор. Кроме того, в сообщении упоминается, что они расширили функциональность и надеются однажды внести свой вклад в оригинальный проект. Я обеспокоен тем, что пока они этого не сделают, нам также может потребоваться расширить функциональность.
Сказав это, оригинальные требования LinkedIn для системы шаблонов очень близки к нашим (см. ниже), и перед тем, как выбрать, они сделали очень тщательные исследования.
-
Наши требования:
- DRY: Мы в идеале хотим использовать систему шаблонов на сервере (на основе Java) и на стороне клиента или просто на стороне клиента если мы выберем полный подход LinkedIn;
Instead of using a JSP, GSP, or ERB to assemble a page server side and send back HTML, we have the server send back just the dynamic data as JSON and have the page assembled in the browser using a static client-side template served from a CDN"
- Полностью интернационализированный
- Хорошая поддержка сообщества.
- Достаточно легко использовать/подбирать
- Хорошо работает с jQuery и Backbone.js
- Хорошо документировано
- DRY: Мы в идеале хотим использовать систему шаблонов на сервере (на основе Java) и на стороне клиента или просто на стороне клиента если мы выберем полный подход LinkedIn;