Особенности работы с Groovy | OTUS

Курсы

Программирование
PHP Developer. Basic
-20%
Специализация PHP Developer
-25%
C# Developer. Professional
-20%
Team Lead
-20%
Symfony Framework
-20%
PHP Developer. Professional
-20%
C# ASP.NET Core разработчик
-20%
Специализация Python Developer
-25%
Разработчик на Spring Framework
-20%
Kotlin Backend Developer
-20%
Архитектура и шаблоны проектирования
-20%
Highload Architect Java Developer. Professional Android Developer. Basic Специализация Android-разработчик Unity Game Developer. Professional Специализация C++ Developer Cloud Solution Architecture Java Developer. Basic JavaScript Developer. Professional NoSQL Rust Developer Framework Laravel Unity Game Developer. Basic Node.js Developer JavaScript Developer. Basic C# Developer. Basic Специализация C# Unreal Engine Technical Game Design Kotlin Developer. Basic
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

Особенности работы с Groovy

В этой статье рассмотрим некоторые особенности работы с Groovy на примерах. Начиная с Java 11, исходный код Groovy можно выполнять как обычный скрипт. Чтобы это работало, необходимо, чтобы скрипт содержал код вне определения класса либо класс с методом main, либо Runnable, либо же GroovyTestCase:

1-1801-17db0d.png

В качестве строк в Groovy используются Java Strings с одинарными кавычками, а также GStrings с 2-ми кавычками.

2-1801-0bee0c.png

При этом Groovy неявно генерирует методы, обеспечивая тем самым доступ к переменным (setColor(String color) и getColor()):

3-1801-91073a.png

Если же нужен доступ к спискам, массивам и отображениям, Groovy делает это просто и последовательно:

4-1801-dab1dc.png

Следующий момент -- сlosure (замыкание). Речь идет об анонимной функции и объекте в одном виде:

5-1801-fd7be9.png

При этом return совершенно не обязательно указывать в функции — по умолчанию вернется значение последней упомянутой переменной.

Что касается передачи параметров в методы, функции либо замыкания, то делать это можно без скобок:

6-1801-e7d711.png

Ниже -- параметры с установленными значениями:

7-1801-622b08.png

А теперь приведем пример множественного присваивания переменных:

8-1801-53099c.png

Очередной момент -- если мы запустим новый поток с объявлением ключевого слова "as", мы, по сути, приведем объект Thread к интерфейсу Runnable:

9-1801-f0d471.png

Что касается неизменяемых классов, то их маркируют посредством аннотации Immutable:

10-1801-8816ab.png

Далее стоит упомянуть Traits -- интерфейс и его стандартную реализацию и состояние в одном месте:

11-1801-16603c.png

12-1801-7fc6c7.png

Остается сказать пару слов про встроенный менеджер зависимостей Grape -- он дает возможность подгружать нужные библиотеки и файлы из репозиториев maven в случае вызова из командной строки (файл -- testJetty.groovy):

13-1801-19e8c0.png

По материалам https://ru.wikipedia.org/wiki/Groovy.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться