Groovy
Введение | |
Hello World | |
Арифметика | |
Кавычки | |
Похожие статьи |
Введение
Groovy — объектно-ориентированный язык программирования, разработанный для платформы
Java
как дополнение к языку Java с возможностями
Python
,
Ruby
и Smalltalk.
Использует java-подобный синтаксис с динамической компиляцией в JVM байт-код и напрямую работает
с другим java-кодом и библиотеками.
Язык может использоваться в любом java-проекте или как сценарный язык. Активно используется как
Предметно-ориентированный язык для написания скриптов при работе в предметной области
(от математики до обработки научных данных), а также сборки и тестирования приложений (Gradle).
Groovy завершил процесс стандартизации в Java Community Process (JSR 241).
Основные возможности языка, отличающие его от Java: как статическая, так и динамическая типизация; встроенный
синтаксис для списков, ассоциативных массивов, массивов и регулярных выражений; перегрузка операций.
Замыкания в Groovy появились задолго до Java.
На Groovy создано ряд популярных веб-фреймворков, в том числе Grails и Ratpack, фреймворк для создания настольных приложений Griffon,
платформа тестирования Spock.
Язык нашёл применение в качестве сценарного для расширения возможностей платформенного программного обеспечения.
В частности, генератор отчётов iReport, основанный на Java-библиотеке JasperReports, позволяет встраивать в отчёты выражения на
Groovy и писать на нём дополнительную логику.
Система непрерывной интеграции
Jenkins
позволяет использовать сценарии автоматизации, созданные на Groovy. Приложение для тестирования веб-сервисов SoapUI поддерживает написание тестовых
сценариев на Groovy.
Программирование на Groovy поддерживается в основных интегрированных средах разработки, в том числе IntelliJ IDEA
(начиная с версии 7 или для более ранних версий с использованием JetGroovy Plugin),
Eclipse (с использованием Groovy Eclipse), Netbeans (встроен),
VS Code
(через расширение),
Vim
(через расширение).
Установка
Для Groovy нужно установить
Java
седьмой версии или выше.
Проверить установлена ли у вас Java можно командой
java --version
openjdk 11.0.17 2022-10-18 OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu220.04) OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu220.04, mixed mode, sharing)
Инструкция по установке Java в Windows и Linux находится здесь
Сам Groovy может быть доступен из репозитория вашей ОС
Например, в
Ubuntu
установку можно выполнить командой
sudo apt install -y groovy
groovy -v
Groovy Version: 2.4.17 JVM: 1.8.0_352 Vendor: Private Build OS: Linux
Hello World
class GroovyTut { static void main(String[] args) { println("Hello World"); } }
groovy groovytut.groovy
Hello World
Арифметика
class GroovyTut { static void main(String[] args) { def age = "Dog"; age = 40; println("5 + 4 = " + (5 + 4)); println("5 - 4 = " + (5 - 4)); println("5 * 4 = " + (5 * 4)); println("5 / 4 = " + (5.intdiv(4))); println("5 % 4 = " + (5 % 4)); println("5.2 + 4.4 = " + (5.2.plus(4.4))); println("5.2 - 4.4 = " + (5.2.minus(4.4))); println("5.2 * 4.4 = " + (5.2.multiply(4.4))); println("5.2 / 4.4 = " + (5.2 / 4.4)); } }
groovy groovytut.groovy
5 + 4 = 9 5 - 4 = 1 5 * 4 = 20 5 / 4 = 1 5 % 4 = 1 5.2 + 4.4 = 9.6 5.2 - 4.4 = 0.8 5.2 * 4.4 = 22.88 5.2 / 4.4 = 1.1818181818
class GroovyTut { static void main(String[] args) { println("Hello World"); def age = "Dog"; age = 40; println("3 + 2 * 5 = " + (3 + 2 * 5)); println("(3 + 2) * 5 = " + ((3 + 2) * 5)); println("age++ = " + (age++)); println("++age = " + (++age)); println("age-- = " + (age--)); println("--age = " + (--age)); } }
groovy groovytut.groovy
3 + 2 * 5 = 13 (3 + 2) * 5 = 25 age++ = 40 ++age = 42 age-- = 42 --age = 40
class GroovyTut { static void main(String[] args) { def age = "Dog"; age = 40; println("Biggest Int " + Integer.MAX_VALUE); println("Smallest Int " + Integer.MIN_VALUE); println("Biggest Float " + Float.MAX_VALUE); println("Smallest Float " + Float.MAX_VALUE); println("Biggest Double " + Double.MAX_VALUE); println("Smallest Double " + Double.MAX_VALUE); } }
groovy groovytut.groovy
Biggest Int 2147483647 Smallest Int -2147483648 Biggest Float 3.4028235E38 Smallest Float 3.4028235E38 Biggest Double 1.7976931348623157E308 Smallest Double 1.7976931348623157E308
Кавычки
class GroovyTut { static void main(String[] args) { def hosting = "Beget"; println('My hosting is ${hosting}\n'); println("My hosting is ${hosting}\n"); println("My hosting is $hosting\n"); def multString = '''I use Kaspersky as an antivirus software'''; println(multString); } }
groovy groovytut.groovy
My hosting is ${hosting} My hosting is Beget My hosting is Beget I use Kaspersky as an antivirus software
class GroovyTut { static void main(String[] args) { print("Whats your name? "); def fName = System.console().readLine(); println("Hello " + fName); print("Enter a number "); def num1 = System.console().readLine().toDouble(); print("Enter a number "); def num2 = System.console().readLine().toDouble(); printf("%.2f + %.2f = %.2f \n", [num1, num2, (num1 + num2)]); } }
groovy groovytut.groovy
Whats your name? Andrei Hello Andrei Enter a number 3 Enter a number 4 3.00 + 4.00 = 7.00
Ошибки Groovy | |
Make |