В этом блоге содержатся материалы многих опытных пользователей GWT и есть несколько интересных тем для обсуждения. Лично у меня огромный опыт работы с различными фреймворками пользовательского интерфейса. Я добавлю свои два цента. Давайте рассмотрим фундаментальные преимущества и недостатки GWT
Фундаментальное преимущество
GWT переносит программирование веб-слоя на JAVA. Итак, очевидные преимущества Java начинают проявляться. Это обеспечит объектно-ориентированное программирование. Это также обеспечит отличную отладку и проверку времени компиляции. Поскольку он генерирует HTML и Javascript, он также может скрывать некоторые сложности в своем генераторе.
Фундаментальный недостаток
Недостаток начинается с того же утверждения. GWT переносит программирование веб-слоя на JAVA. Если вы знаете JAVA, возможно, вы никогда не будете искать альтернативный язык для написания своей бизнес-логики. Это самодостаточно и здорово. Но когда дело доходит до написания конфигураций для приложения JAVA. Мы используем файлы свойств, базу данных, XML и т. Д. Мы никогда не храним конфигурации в файле класса JAVA. Подумай, почему это так?
Это потому, что конфигурация представляет собой статические данные. Это часто требует иерархии. Это должно быть читаемым. Это никогда не требует компиляции. Не требует знания языка программирования JAVA. Короче говоря, это другая игра с мячом. Теперь вопрос в том, как это связано с нашей дискуссией?
Теперь давайте подумаем о веб-странице. Как вы думаете, когда мы пишем веб-страницу, мы пишем бизнес-логику? Точно нет. Веб-страница - это просто конфигурация. Это конфигурация иерархических контейнеров и полей. Нам нужно написать бизнес-логику для данных, которые будут собираться и отображаться на веб-странице, а не создавать саму веб-страницу.
Предыдущий абзац делает очень очень сильное утверждение. Это объяснит, почему веб-страницы на основе HTML и XML по-прежнему являются самыми популярными. XML лучше всего подходит для написания конфигураций. Фреймворк должен обеспечивать четкое отделение веб-страницы от бизнес-логики (цель фреймворка MVC). Таким образом, веб-дизайнер сможет применить свои навыки визуализации и мастерства для создания блестящих веб-страниц, просто настраивая XML и не беспокоясь о тонкостях языка программирования. Разработчики смогут использовать свои лучшие в бизнесе JAVA для написания бизнес-логики.
Наконец, давайте поговорим о последствиях в прямых терминах. GWT нарушает этот принцип, поэтому он обязательно потерпит неудачу. Стоимость разработки приложения GWT будет очень высокой, потому что для написания веб-страниц вам понадобятся многоопытные программисты. Требуемый внешний вид будет очень трудно достичь. Время изменения веб-страницы будет очень большим из-за ненужной компиляции. И, наконец, поскольку вы пишете веб-страницы в JAVA, очень легко испортить их с помощью бизнес-логики. Не зная, вы будете вводить сложности, которых следует избегать.