Каково различие между Калиткой Apache и Щелчком Apache? Щелчок Apache сохраняется? Последний выпуск, кажется, с ноября 2008 Спасибо Тысячелистники
def find[T](l1 : List[T], c1 : T => Boolean, c2 : T => Boolean) = ((None : Option[(String, T)]) /: l1)( (l, n) => l match {
case x : Some[_] => l
case x if c1(n) => Some("c1", n)
case x if c2(n) => Some("c2", n)
case _ => None
})
scala> find(l1, c1, c2)
res2: Option[(String, java.lang.String)] = Some((c1,B))
scala> find(l2, c1, c2)
res3: Option[(String, java.lang.String)] = Some((c2,AA))
В зависимости от ваших требований вы можете иметь параметр Map [T = > Boolean, последовательность] для последовательностей метки: def find [T] (l1: List [T], fs: Map [T = > Boolean, последовательность])
или определить собственные операторы.
Будет выполнен анализ всего списка, в котором поиск прекращается для первого найденного элемента.
-121--3147262-функция, принимающая целое число, которая возвращает функцию, которая принимает целое число и возвращает целое число
Последняя часть этого:
функция, которая принимает целое число и возвращает целое число
, должна быть довольно простой, пример C #:
public int Test(int takesAnInteger) { return 0; }
Итак, остается
функция, принимающая целое число, которая возвращает (функция, подобная описанной выше)
C # еще раз:
public int Test(int takesAnInteger) { return 0; }
public int Test2(int takesAnInteger) { return 1; }
public Func<int,int> Test(int takesAnInteger) {
if(takesAnInteger == 0) {
return Test;
} else {
return Test2;
}
}
-121--2422956- Click активно развивается и недавно получил статус Apache Top Level Project. В настоящее время выполняется переход к новому домену по адресу: http://click.apache.org . После завершения миграции будет выпущена следующая версия 2.1.0.
Прежде чем сравнивать Click и Wicket, обратите внимание, что я занимаюсь в Apache Click, но оценивал Wicket пару лет назад, так что у меня есть довольно хорошее представление о том, как он работает.
Click является рамкой без состояния, в то время как Wicket имеет статус. В Click страницы и компоненты создаются заново для каждого запроса, в Wicket страницы и компоненты сохраняются в сеансе и повторно используются в последующих запросах.
Калитка предназначена для создания сложных приложений (рабочего стола), в которых хранится и управляется все состояние графического интерфейса пользователя. Щелчок предназначен для более традиционного веб- прикладной, где мало или вообще нет состояния, необходимого для рендеринга страницы. Если необходимо сохранить состояние, необходимо управлять им самостоятельно, добавляя/удаляя его из сеанса. Стоит отметить, что Wicket обеспечивает поддержку страниц без состояния и Click поддерживает страницы с состоянием, однако это не является нормой для этих рамок.
Другое отличие заключается в том, что элементы управления Click умеют выполнять рендеринг, поэтому нет необходимости повторять разметку в шаблонах страниц. При необходимости шаблоны можно расположить вручную, но это не обязательно. В Wicket разметка должна отражать компоненты, созданные на странице. Идея в Wicket заключается в том, что разработчик Java фактически не создает и не обслуживает шаблоны, а обрабатывается дизайнером.
относится к
Бобу
С калиткой вы используете чистую html и нет языка шаблонов, как скорость или jsp, как это делает щелчок. Это удобно не только для самого программиста, которому необходимо изучить только html и java, но и для инструментов (отладка и т. Д.)
. Это обеспечивает лучшее разделение пользовательского интерфейса и логики. В калитке также не требуется xml, который, по ИМХО, отличается от щелчка.
Еще несколько отличий: трафик списков рассылки wicket выше; по калитке больше публикаций (например, книг), чем по щелчку; есть другие разработчики, пишущие калитку (см. это и это )