Это действительно для более старой версии, например. 1.5:
org.codehaus.mojo
jaxb2-maven-plugin
1.5
xjc
xjc
${project.basedir}src/main/resources
${project.basedir}src/main/java
Для версии 2.4, согласно документации, больше нет тега schemaDirectory
https://www.mojohaus.org/jaxb2-maven-plugin/Documentation/v2.4 /xjc-mojo.html
org.codehaus.mojo
jaxb2-maven-plugin
2.4
xjc
xjc
${project.basedir}src/main/java
Во-первых, вы хотите понять, что такое функциональное программирование; то есть, каковы основные концепции и насколько хорошо язык позволяет вам придерживаться этих концепций. Для ООП основными концепциями являются инкапсуляция, наследование и полиморфизм (или просто передача сообщений для smalltalkers). Для FP центральным принципом является ссылочная прозрачность (что подразумевает безгражданство). Попытка программировать в функциональном стиле на языке, который не поддерживает функциональные возможности (например, функции как объекты первого класса), будет неудобной, если не невозможной. То же самое и с программированием в ООП на языках, не имеющих функций ООП.
К счастью, Javascript является мультипарадигмальным и поддерживает оба. Вместо того, чтобы искать примеры "функционального" кода просто подумайте обо всех способах обеспечения ссылочной прозрачности, и это естественно приведет к использованию функций FP языка, таких как лямбды, замыкания, функции высшего порядка (например, отображение, сокращение, фильтр) , карри и т. д.
Серьезно, это не означает, что это не ответ. Я действительно думаю, что это наиболее мотивирующий и эффективный способ подойти к этому.
Тем не менее, вот несколько, надеюсь, полезных ссылок.
One example that I remember is a function that is bound to an object for registering as event handler
function bind(aHandler, aBind) {
var handler = aHandler;
var bind = aBind;
return function(event) {
return handler.call(bind, event);
}
}
It is dealing with scopes (currying) and is handy.
Взгляните на jQuery . Этот блог является хорошим примером того, что он выполнен в функциональном стиле. http://importantshock.wordpress.com/2009/01/18/jquery-is-a-monad/
Тем не менее, JS на самом деле не является функциональным языком (IMO), поэтому пытаюсь заставить его Быть одним из них, вероятно, не самый эффективный путь для разработчика (используя отвертку вместо молотка - все равно забивает гвоздь в стену, но не так быстро :). Опять же, это лямбда-язык.
Дуглас Крокфорд ссылается на Функциональный JavaScript со своей страницы ресурсов JavaScript . Вот отрывок с сайта:
Functional - это библиотека для функциональных программирование на JavaScript. Это определяет стандартные функции высшего порядка такие как map, reduce (aka foldl) и выберите (он же фильтр). Он также определяет такие функции, как карри, rcurry и частичный для частичной функции применение; и сочинять, охранять и пока для программирования на уровне функций. И все эти функции принимают строки, такие как 'x -> x + 1', 'x + 1' или "+1" как синоним более подробного function (x) {return x + 1}.