2010-11-16 5 views
3

Может ли кто-нибудь сравнить и сравнить два решения? Я мало знаю о Seam или JSF, хотя я знаком с тем, как работает GWT и очень похож на его теорию.Шов с JSF против шва с GWT

Основные проблемы:

  • Масштабируемость/производительность

  • Кросс-браузерная совместимость

  • кривой обучения

  • Производительность

  • WYSIWYG UI здание

  • Способность кодировать как можно больше в Java (я могу коснуться JS/HTML/CSS, если это возможно, но предпочтительно не)

ответ

3

Что касается серверной реализации вашего приложения, вы должны учитывать следующее: (pro/con является субъективным, поэтому вы должны решить) при использовании GWT вместо JSF.

  • Как упоминается @ z00bs, с использованием GWT у вас будет рабочий стол, такой как приложение. Таким образом, вы не будете использовать/нужна функция навигации по страницам или странице действия Seam.
  • Все запросы от GWT на сервер выполняются кратковременно. Это означает, что большинство ваших компонентов будут иметь значение ScopeType.EVENT или ScopeType.STATELESS, и вам не нужно использовать область разговора.
  • Использование GWT вместо JSF уменьшает нагрузку на сервер, поскольку вы удерживаете большую часть состояния в клиенте.
  • Вы не можете использовать жизненный цикл JSF/Seam с GWT. Например, вы теряете часть проверки модели на жизненном цикле. Проверка модели будет инициироваться только с помощью диспетчера объектов или вручную.
  • Все остальные функции, такие как безопасность, отправка по почте или EL, все еще работают при использовании Seam with GWT.

Поскольку Seam хорошо известен своей поддержкой JSF, вы должны рассмотреть другую структуру, такую ​​как Spring roo, которая также сильно связана с GWT.

+0

Большое спасибо всем вам, ребята! Я решил пойти с Весной Роо; это серьезно один из самых крутых инструментов, которые я видел за долгое время. –

0

Ни! не используйте шов (или jsf в этом отношении), если вам абсолютно не нужно! В java есть так много лучших веб-технологий.

+2

Пожалуйста, объясните? Почему я должен избегать Seam и каковы мои альтернативы? –

+0

Не могли бы вы дать объяснение, почему нельзя использовать шов вместо такого безоговорочного ответа? – z00bs

+0

Вот несколько причин, почему JSF отстой: http://ptrthomas.wordpress.com/2009/05/15/jsf-sucks/ (о, и Джеймс Гослинг тоже его ненавидит) – Martin

1

Область разговора, предлагаемая Seam, может быть с легкостью заменена в GWT, сохраняя длительные транзакции (например, корзины покупок) в памяти на стороне клиента.

3

Что касается клиентской разработки вашего приложения, мы приняли такое же решение.

Мы решили пойти на GWT по следующим причинам:

  • Большая часть разработки может быть сделано в Java. Поскольку у нас есть сильный опыт в развитии Java, это сэкономит нам много времени.
  • Мы можем использовать все известные и любимые инструменты для реализации, поскольку все сделано в java.
  • Наше приложение предназначалось для настольных компьютеров, таких как одностраничное веб-приложение без полного обновления страницы. На данный момент GWT, казалось, лучше всего подходит для этой потребности (и это все еще так).
  • Нажатие большей части состояния клиенту и позволяющее ему выполнять большую часть трудоемкой обработки, обращенной к нам. Таким образом, сервер может обрабатывать множество одновременных запросов, а соединения с сервером необходимы только для синхронизации состояния с клиентом.
  • Поддержка Unit Testing Код GWT хорош, в сочетании с MVP pattern еще лучше.
  • С момента создания UiBinder создание и укладка сложных пользовательских интерфейсов стало намного проще и быстрее.

Для ваших основных проблем:

  • Кроссбраузерность главным образом позаботилась о самой GWT.
  • WYSIWYG можно с GWT Designer (я должен сказать, что я никогда не использовал его, я люблю строить пользовательский интерфейс сам ...)
  • GWT очень быстро, потому что рендеринг все это делается на стороне клиента.
  • Производительность высокая, когда вы привыкли к java.
  • Кривая обучения зависит в основном от используемой архитектуры (сначала MVP сложна).
  • Ваше приложение будет масштабироваться, так как сервер освобождается от дорогостоящей обработки.

Надеюсь, что это поможет.

(Некоторые соображения относительно выбора шва скоро появятся из @kraftan).

+0

+1 для указания gwt designer –

Смежные вопросы