Grails с плагином Vaadin, это правильный выбор?
Для моей организации я оцениваю технологии RICH для наших следующих проектов.
В настоящее время мы используем Grails 2.1.0 и очень довольны этим, особенно с groovy и gorm, и мы хотели бы остаться с этим. Идея состоит в том, чтобы расширить grails с некоторой структурой/библиотекой RICH. В настоящее время я оцениваю: плагин Grails для ZK, плагин Grails для Vaadin, knockoutjs, angular.js, ember.js.
Я уже получал отзывы от своих коллег, которые работали с ZK (без grails), и их заключение было: классно, но забывайте выступления, ZK отправляется на сервер каждый раз, когда вы что-то делаете на стороне клиента.
Мой вопрос: это также верно с Ваадином (плагин для Grails)? Как он реагирует на тяжелые одностраничные приложения? и как насчет Бамби? это может быть вариант?
На бумаге grails + Vaadin - это то, что нам нужно: мы хотим написать groovy/java, а не xml и, конечно же, не javascript. Правильно ли это?
Я знаю, что мой вопрос очень общий, но я только в начале оценки...
Спасибо за внимание!
Ответы
Ответ 1
- Ваадин отлично работает с Groovy и Grails. Вы можете получить услуги (на самом деле spring beans) с помощью метода Grails.get() и выполнить локализацию с помощью метода Grails.i18n(). Поскольку весь код будет написан в Groovy, а не в Java, он станет менее тяжелым (меньше строк кода и т.д.).
- Vaadin не выполняет никаких действий пользователя на сервере. Вы можете повлиять на это, установив setImmediate (false) на любой компонент.
- Когда вы делаете сложное приложение в Ваадине, вам нужно быть осторожным, сколько компонентов вы кладете на страницу. Если вы ожидаете, что на одной странице будет тысячи компонентов, тогда у браузера будет проблемы с производительностью при обработке (конечно, скорость рендеринга зависит от вашего компьютерного оборудования). Дополнительные советы здесь.
- Я рекомендую - попытайтесь создать пользовательский интерфейс в Vaadin и поддельную базу данных. Затем просмотрите производительность, а затем переключитесь на реальную базу данных. Обычно люди обвиняют Ваадина, но проблема в другом месте, например. в базе данных, индексирование, загрузка ко многим элементам сразу...
- Если вы не хотите играть с JavaScript, я полагаю, что knockoutjs, angular.js, ember.js вышли из игры.
- Вам нужно выяснить, нужны ли компоненты Vaadin. Я действительно предлагаю попробовать и сделать Доказательство Концепции в Ваадине. Если нет, Vaadin 7 упрощает интеграцию с JavaScript! Таким образом, вы можете легко интегрировать код сервера Vaadin с любой библиотекой JavaScript (например, с помощью графических карт и т.д.).
- Вам нужно будет загружать ваши контейнеры лениво (проверить это)
- Я думаю, вы должны начать с Vaadin 7 (здесь учебник)
- В Vaadin 7 (в версиях 7.0.1 или 7.0.2) будет больше оптимизаций производительности.