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

В граалях 2.0 что новогоhttp://grails.org/doc/2.0.0.RC1/guide/introduction.html#whatsNew
это говорит:
1.1.3 Web Features Controller Actions as Methods It is now possible to define controller actions as methods instead of using closures as in previous versions of Grails. In fact this is now the preferred way of expressing an action.
Например:

// action as a method
def index() {
}
// action as a closure
def index = {

}

Почему это важно? Что это меняет?

ОБНОВЛЕНИЕ: я нашел эту дискуссию, которая много говорит о масштабах и некоторых довольно волосатых вещах.http://grails.1312388.n4.nabble.com/Controller-actions-methods-or-closures-was-Re-grails-dev-Statically-typed-meta-programing-td3048287.html

Я думаю, что мой вопрос также может быть следующим: какое преимущество имеют затворы для действий?

Ответы на вопрос(1)

Решение Вопроса

Вот

Сверху ссылка

Использование методов вместо свойств Closure имеет ряд преимуществ:

Эффективная памятьРазрешить использование контроллеров без сохранения состояния (одноэлементная область)Вы можете переопределить действия из подклассов и вызвать переопределенный метод суперкласса с помощью super.actionName ()Методы могут быть перехвачены стандартными механизмами прокси, что сложно сделать с Closures, поскольку они являются полями.

Также есть похожий интересный вопросВот это имеет некоторые подробности

 Mikey09 февр. 2012 г., 05:15
Интересно, так почему же они когда-либо закрывались?

Ваш ответ на вопрос