Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> java

Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java

Что такое Groovy?

Apache Groovy — это объектно-ориентированный, совместимый с Java-синтаксисом язык, работающий на JVM. Он компилируется в Java-байткод, поэтому любая система с Java Runtime Environment может его выполнять. Groovy добавляет динамическую типизацию, замыкания (closures), поддержку DSL и лаконичный синтаксис, делая его идеальным спутником, а не заменой для Java.

Зачем использовать Groovy?

История Groovy

Ключевые особенности Groovy

Как установить Groovy

  1. Убедитесь, что Java установлена — руководство по установке Java
  2. Скачайте установщик с страницы загрузки Groovy
  3. Запустите установщик, выберите язык и нажмите OK
  4. Нажмите NEXT на приветственном экране Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java
  5. Примите условия лицензии Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java
  6. Выберите компоненты для установки и нажмите NEXT Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java
  7. Выберите директорию установки и нажмите NEXT Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java
  8. Установите папку Start Menu и нажмите NEXT Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java
  9. Завершите установку (пути остаются по умолчанию) и нажмите NEXT Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java
  10. После установки запустите Groovy Console из меню Пуск для проверки Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java

Groovy Hello World

Java версия:

public class Demo {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

Groovy эквивалент — одна строка:

println "Hello World."

Groovy устраняет необходимость в точках с запятой, скобках и многословном System.out.println.

Переменные

Java требует явных типов:

public class Demo {
    public static void main(String[] args) {
        int x = 104;
        System.out.println(x);
        // x = "Guru99"; // Ошибка компиляции
    }
}

Groovy поддерживает динамическую типизацию через def:

def x = 104
println x.getClass()
x = "Guru99"
println x.getClass()

Вывод:

class java.lang.Integer
class java.lang.String

Многострочные строки используют тройные кавычки:

def x = """Groovy at Guru99"""
println x

Операторы

Groovy поддерживает обычные категории:

Циклы

Java for-цикл:

for (int i = 0; i <= 5; i++) {
    System.out.println(i);
}

Groovy эквиваленты:

0.upto(4) { println "$it" }
2.upto(4) { println "$it" }
5.times { println "$it" }
0.step(7, 2) { println "$it" }

Принятие решений

ОператорОписание
ifВыполняется, когда условие истинно.
if/elseВыполняет true-ветку; иначе else-ветку.
nested ifМножественные условные ветки.
switchЧистая альтернатива для много-ветвятой логики.
nested switchПоддерживается в Groovy.

Списки (Lists)

Список — это упорядоченная коллекция ссылок, определяемая квадратными скобками.

Частые методы списков:

МетодОписание
add()Добавить значение в конец.
contains()True, если значение существует.
get()Элемент по индексу.
isEmpty()True, если список пуст.
minus()Вернуть новый список без указанных элементов.
plus()Вернуть новый список с добавленными элементами.
pop()Удалить последний элемент.
remove()Удалить элемент по индексу.
reverse()Вернуть перевернутый список.
size()Количество элементов.
sort()Вернуть отсортированную копию.

Пример:

def y = ["Guru99", "is", "Best", "for", "Groovy"]
println y
y.add("Learning")
println(y.contains("is"))
println(y.get(2))
println(y.pop())

Вывод:

[Guru99, is, Best, for, Groovy]
true
Best
Learning

Карты (Maps)

Карта — это коллекция пар ключ-значение.

Методы карт:

МетодОписание
containsKey()Проверить наличие ключа.
get()Вернуть значение для ключа.
keySet()Набор ключей.
put()Добавить или заменить пару ключ/значение.
size()Количество записей.
values()Коллекция значений.

Пример:

def y = [fName:'Jen', lName:'Cruise', sex:'F']
print y.get("fName")

Вывод:

Jen

Замыкания (Closures)

Замыкание — это блок кода, обрабатываемый как объект, похожий на лямбду.

Простое замыкание:

def myClosure = { println "My First Closure" }
myClosure()

С параметрами:

def sum = { a, b, c -> return a + b + c }
println sum(1, 2, 3)

Вывод:

6

Groovy vs Java

GroovyJava
Модификатор доступа по умолчанию — public.По умолчанию — package-private.
Автоматические геттеры/сеттеры для полей.Должны определяться вручную.
Интерполяция строк с двойными кавычками.Нет интерполяции.
Типизация опциональна.Типизация обязательна.
Точки с запятой не нужны.Точки с запятой обязательны.
Каждый скрипт автоматически расширяет класс Script.Нужен public static void main для выполнения.

Частые мифы

МифРеальность
Groovy только для скриптинга.Универсален: используется для веб-фреймворков, обработки данных и многое другое.
Groovy чисто функционален.Заимствует функциональные концепции, но остается ООП языком.
Groovy идеален только для TDD.Поддерживает TDD, но полезен во многих сценариях.
Groovy ограничен Grails.Grails — популярный фреймворк, но Groovy работает независимо.

Недостатки использования Groovy

Основные инструменты Groovy

Примеры использования:

groovysh

Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java

groovyConsole

Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java

groovy

Мастерство Groovy: Руководство для начинающих по скриптингу на платформе Java

Резюме

java

  1. Освоение цикла for в Java: синтаксис, примеры и лучшие практики
  2. Создание робота, избегающего препятствия, на Raspberry Pi — руководство для начинающих
  3. ЧПУ-фрезеровки для начинающих: профессиональные результаты без лишних сложностей
  4. Освойте PowerShell: руководство для начинающих по мощному скриптингу
  5. Изучение C программирования: полное PDF-руководство для начинающих
  6. Учебник по массивам в Java: объявление, создание и инициализация с примерами кода
  7. Stack vs Heap в Java: Практическое руководство по распределению памяти
  8. Java-программа для идентификации чисел Армстронга с использованием for-цикла
  9. Java-проверка чисел-палиндромов: алгоритмы с while и for циклами
  10. Металлообработка 101: понятное руководство для начинающих