Еще одна вещь, которую вы могли бы сделать, чтобы сократить код, если вы используете статические переменные, - это использовать статический импорт (на самом деле это часть Java, но я не нашел его, пока не перешел на groovy):
Если вы делаете статический импорт CurrencyType (возможно, перечисление, содержащее различные типы валюты, которые вы определили) в верхней части вашего класса:
static import com.example.CurrencyType.*
Внизу в вашем коде вы небольше не нужно ставить префикс перед всеми ссылками CurrencyType
, вы можете просто сделать:
Currency.findByCode(DOLLAR)
Если они не нуждаются в изменении, вы также можете добавить вспомогательный метод в ваш класс Currency, чтобы получить его:
Currency.groovy:
static import com.example.CurrencyType.*
...
static transients = ['dollar']
...
static Currency getDollar() {
Currency.findByCode(DOLLAR)
}
Это позволит вам использовать Currency.dollar
в другом коде.В этих классах вы также можете использовать статический импорт, чтобы просто сослаться на dollar
:
static import com.example.Currency.*
....
println dollar // gets the dollar from the db and prints it out