Сейчас я программирую веб-приложение на базе Vaadin. Я вполне доволен циклом обучения и тем, как легко можно разработать пользовательский интерфейс.
В целом плюсы Vaadin следующие:
- "Родное" программирование пользовательского интерфейса для пользователей Java (иерархия компонентов / слушатели событий / drag & drop / валидация).
- Из коробки хорошая коллекция компонентов (дерево / таблица / список / ...).
Минусы:
- Большой и сложный HTML-вывод. Это замедляет время отклика браузера (также упоминалось здесь и там) и приводит к некоторым особенностям рендеринга от браузера к браузеру.
- Трудности при работе с большим количеством компонентов (см. Может ли CustomLayout работать с 5000 компонентами?).
- Необходимость перекомпиляции набора виджетов, если вы используете компоненты сторонних производителей.
Мой вопрос к сообществу:
Какой Web Framework лучше всего подходит под следующие требования:
- Разделение представления и обработчиков событий/действий.
- Общие компоненты из коробки (с расширенными возможностями, такими как перетаскивание колонок таблиц, ленивая загрузка).
- Поддержка макетов (без головной боли с вставками и выравниванием компонентов).
- Распространение событий на сервер и обработка событий на стороне сервера.
- Возможность генерировать свой HTML (если фреймворк не основан на HTML), а также перехватывать события для него (например, щелчки мыши).
- Возможность регистрации обратных вызовов нажатия клавиш (например, Ctrl-S) - это плюс.
- Короткая кривая обучения для Java-разработчика - это плюс.
Разумное сочетание подходов тоже подойдет. Пожалуйста, дайте ссылку на приложение "Hello World", реализованное на основе предложенного вами фреймворка. Я рассматриваю Apache Wicket / Echo2 / Tapestry / Click / GWT, но сложно сделать выбор, не поиграв пару месяцев (надеюсь, без глубокого разочарования).
задан Community 23 May 2017 в 12:09
поделиться