Стоит ли выбирать Apache Click или Tapestry 5? - PullRequest
4 голосов
/ 06 июля 2011

Я должен решить, использовать ли Apache Click или Apache Tapestry 5 Framework. Какой я должен выбрать? Я ищу фреймворк, который я мог бы использовать для создания веб-приложений Java EE в течение следующих нескольких лет. В следующие несколько дней я буду тестировать их как на примере, так и на заказных проектах, но я хотел бы заранее знать, является ли один из них нестабильным или недостаточно большим для крупномасштабных корпоративных приложений. Мне нужно, чтобы он работал без проблем с Maven, различными AJAX и Eclipse.

Заранее спасибо, сообщество StackOverflow:)

Ответы [ 6 ]

9 голосов
/ 07 июля 2011

Ну, спасибо, Драган.Я думаю, что основной вопрос заключается в том, довольны ли вы компонентно-ориентированной средой (Tapestry) или ориентированной на действие платформой (Click).Природа компонентов, как минимум, метода Гобеленов, заключается в том, что фреймворк может взять на себя много работы;например, как формировать URL, как называть параметры запроса или имена атрибутов сеанса.Кроме того, у Tapestry есть много возможностей для метапрограммирования, и общая модель программирования, которая сосредотачивается на изменчивых объектах, богатых данными и операциями, намного интереснее, чем работа с типичными сервлетами.Я не знаю достаточно о Click, чтобы сказать, как или если он решает эти проблемы, но мне очень удобно рекомендовать Tapestry поверх любых других фреймворков, о которых я знаю.

4 голосов
/ 06 июля 2011

Tapestry - это веб-фреймворк для сложных проектов JavaEE.Я использую его уже 3 года, и он никогда не выходит из строя.

Вы можете быстро освоить Tapestry5, но если вы новичок в концепциях МОК и т. Д., Может потребоваться некоторое время, чтобы привыкнуть.

Я бы сказал, что у гобелена есть некоторая умеренно крутая кривая обучения, но он не имеет ограничений в том, что вы можете сделать, и в значительной степени все вещи сделаны довольно элегантно, с фреймворком, помогающим вам во многих отношениях и не мешающимфутов.

Ура

3 голосов
/ 09 июля 2012

Я использовал Apache Click, и был довольно разочарован ... простые вещи были трудны для выполнения, и хотя я изначально находил фреймворк элегантным в концепции, в действительности он быстро стал совсем не элегантным - базовое управление состояниемкомпонентов было ужасно громоздким во всем, кроме самых простых случаев.

Я также был разочарован, узнав, что утверждение Клика о «полной поддержке JSP» просто не соответствует действительности - например, их компонент Panel, один из их центральныхКомпоненты, используемые для макета, не могут использоваться с шаблонами JSP, он поддерживает только Velocity или FreeMarker (верно для Click 2.3, последней версии, которую я оценил).Более того, они не заинтересованы в исправлении этого - я на самом деле представил патч, позволяющий панелям и другим компонентам работать с шаблонами JSP, но они проявили ограниченный интерес и никогда не принимали его.Гобелен, но я могу сказать, что в тот день, когда я отказался от клика в пользу Play!1.x фреймворк был удачным (хотя, кстати, теперь, после выхода неутешительного Play! 2.0, я снова в поисках достойного статически скомпилированного веб-фреймворка).

3 голосов
/ 23 июля 2011

Я использую Гобелен чуть больше года, и вот некоторые моменты, которые, как я думал, я добавлю, которые здесь не упоминались:

Плюсы:

  1. Гобелену требуется очень небольшая конфигурация XML, поэтому, если XML не ваша чашка чая, вы будете очень довольны. Например, не нужно больше определять тонны правил навигации в xml, если вы хотите отправить своего пользователя на страницу, просто верните класс страницы из обработчика действия, и все готово.
  2. Поскольку вы упомянули приложения "Enterprise", стоит отметить, что Tapestry 5 очень хорошо работает с Spring и Hibernate. Вы можете легко вставить Spring bean-компоненты в страницы гобеленов и сервисы Tapestry в Spring bean-компоненты. Если вам нужно внедрить EJB-компоненты, вы можете подключить их как Spring Beans и внедрить их так же, как вы вводите Spring-бин.
  3. Гобелен действительно быстрый , с временем отклика в десятках миллисекунд даже при умеренной нагрузке.
  4. Множество компонентов доступны из различных источников , так что вы можете просто подключиться и играть, а не изобретать велосипед, что сэкономит вам массу времени.
  5. Очень полезное и отзывчивое сообщество.
  6. Хорошо работает с Eclipse, и завершение кода доступно для шаблонов, если правильно установить .

Минусы:

  1. Требуется немного больше усилий для изучения тонкостей фреймворка, чем скажем, Struts, но IMO намного проще, чем JSF.
  2. Быстрая разработка приводит к тому, что старые версии тоже устаревают быстро, хотя обещания были сделаны (еще раз) для поддержания обратная совместимость на этот раз.

Мне нечего сказать о Click, так как я никогда не пробовал его, но дайте нам знать, что вы выбрали!

2 голосов
/ 11 июля 2011

Я бы посоветовал вам попробовать их обоих.Начните с Apache.Это займет у вас пару дней, если не несколько часов, чтобы начать работу и написать заявку.Сделав небольшое приложение, теперь перейдем к гобелену.Это может занять некоторое время, чтобы учиться.вам может понравиться или не понравиться.apache click очень прост, и вы можете начать работать очень быстро.Гобелен очень сложен и может иметь больше возможностей.Между ними калитка.Я более опытный с калиткой, и я сделал несколько заявлений с ним.Я пробовал tapestry5 несколько раз.Я отказался от этого, затем вернулся к нему позже и сдался снова.Сейчас пробую apache click, и это кажется довольно хорошим.Моя точка зрения, потратьте немного времени на фреймворки, и вы выберете тот, который лучше всего подходит для вас.Wicket, tapestry, click и JSF являются одними из самых популярных компонентных Java-веб-фреймворков.

0 голосов
/ 13 марта 2015

Tapestery - это великолепный фреймворк, и мне хотелось бы вернуться в прошлое и переделать все свои веб-проекты с помощью Tapestry. Просто попробуйте пример приложения и поиграйте с ним. Вы быстро поймете, почему Tapestery такой крутой!

...