Apache Wicket против Apache Click - PullRequest
18 голосов
/ 30 января 2010

В чем разница между Apache Wicket и Apache Click? Apache Click поддерживается? Последний релиз, кажется, с ноября 2008 Спасибо Ахиллес

Ответы [ 4 ]

41 голосов
/ 01 февраля 2010

Click активно развивается и недавно получил статус Apache Top Level Project. В настоящее время он перемещается в свой новый домен по адресу: http://click.apache.org. После завершения миграции будет выпущена следующая версия 2.1.0.

Прежде чем сравнивать Click и Wicket, обратите внимание, что я являюсь коммиттером в Apache Click, но оценил Wicket пару лет назад, поэтому достаточно хорошо представляю, как он работает.

Click - это структура без сохранения состояния, а Wicket с сохранением состояния. В Click страницы и компоненты воссоздаются при каждом запросе, в Wicket страницы и компоненты сохраняются в сеансе и повторно используются в последующих запросах.

Wicket предназначен для создания сложных приложений (например, рабочего стола), где все состояние графического интерфейса пользователя хранится и управляется для вас. Click предназначен для более традиционных веб-приложений, в которых для отображения страницы требуется минимальное или полное состояние. Если вам нужно сохранить состояние, вы должны сами управлять им, добавляя / удаляя его из сеанса. Стоит отметить, что Wicket обеспечивает поддержку страниц без сохранения состояния, а Click поддерживает страницы с контролем состояния, однако это не является нормой для этих платформ.

Другое отличие состоит в том, что в элементах управления Click знают, как визуализировать себя, поэтому вам не нужно повторять разметку в шаблонах страниц. Вы можете по-прежнему вручную макетировать свои шаблоны, если хотите, но это не является строго обязательным. В Wicket разметка должна отражать компоненты, созданные на странице. Идея в Wicket заключается в том, что Java-разработчик на самом деле не создает и не поддерживает шаблоны, а обрабатывает их дизайнер.

С уважением

Bob

2 голосов
/ 22 сентября 2010

Wicket предлагает больше гибкости при составлении ваших страниц. Вы можете создать одну страницу, состоящую из компонентов для всего приложения, или вы можете создать несколько страниц по своему усмотрению. Клик основан на странице. У калитки есть поддержка AJAX из коробки. Большинство компонентов ajax в wicket возвращаются к обычному обновлению страницы, если браузер не поддерживает ajax. У Wicket есть десятки компонентов из коробки и десятки других из связанных проектов. Одна отличная особенность, которую я нахожу в калитке, это ее многословие. Это означает, что все, что делает мое приложение, - это то, что я создал. Я пишу всю презентацию с использованием HTML и CSS, не создавая ничего. Отсутствие магии - большой плюс для меня из опыта. И наконец, многие крупные корпорации используют калитку. Мобильные Walmat и Welsfargo мобильные сделаны с калиткой.

2 голосов
/ 10 февраля 2010

С калиткой вы используете чистый html и не используете язык шаблонов, как скорость или jsp, как клик. Это удобно не только для самого программиста, который должен только изучать html и java, но и для инструментов (отладка и т. Д.)

Обеспечивает лучшее разделение пользовательского интерфейса и логики. В калитке также не требуется xml, который, по-моему, отличается от клика.

Еще некоторые отличия: трафик в списке рассылки калитки выше; в калитке больше публикаций (например, книг), чем по клику; есть больше разработчиков, кодирующих калитку (смотрите это и это )

1 голос
/ 27 октября 2010

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

Я только начал смотреть на клик. я люблю его безгражданскую природу. Интернет - это запрос / ответ, который должен быть без состояния (по крайней мере, насколько это возможно).

Мне также нравится, как приятно click интегрируется с Apache Cayanne.

...