Have something interesting to share with Java Eastern Europe community?
Become a speaker now

Тренинг “Groovy и Gradle для Java разработчиков”

Целевая аудитория

Java разработчики, которые хотели бы получить теоретические и практические навыки работы с набирающим популярность сборщиком проекта Gradle, а также разобраться в принципах и деталях его устройства. А заодно ознакомиться с Groovy – одним из самых лаконичных и мощных объектно-ориентированных языков при помощи которого пишется DSL для сборки вашего проекта под Gradle.

Описание тренинга

Данный тренинг представит вам Gradle – наиболее оптимальный сборщик на сегодняшний день. Gradle пытается объединить в себе все плюсы Ant, Maven и Ivy. И представить то, что получилось, с помощью Groovy. Теперь вместо того, чтобы скрещивать Batch-скрипты, Java и xml-файлы конфигурации, воевать с вечным конфликтом версий транзитивных зависимостей, можно просто написать несколько строчек кода на диалекте Groovy и радоваться жизни. Диалект специально разработан для описания сборки, тестирования, развертывания, экспорта и любых других действий над проектом, которые только могут прийти вам в голову.

На тренинге мы научимся пользоваться DSL-ом для сборки простых и многомодульных Java проектов, а также писать собственный DSL. Мы также рассмотрим, как можно перевести maven или ant проект на Gradle и наконец выучим Groovу, который действительно является очень мощным и красивым объектно-ориентированным языком.

Детальная программа

  • Основы груви
    • Как запускается Groovy
    • Чем Groovy отличается от Java
    • Важные вещи про синтаксис Groovy
    • Closures
    • Что такое DSL
  • Введение в Gradle
    • Сравнение различных инструментов сборки
    • Преимущества Gradle
    • Философия Gradle
    • Установка и настройка Gradle
    • Билд скрипты Gradle
    • Жизненный цикл сборки
    • Долгоиграющий процесс Gradle
  • Задачи
    • Определение задач
    • Запуск задач
    • Настройки задач
    • Написание своих задач
    • Наследование задач
    • Зависимости задач
    • Исключения в задачах
    • Определение условий при которых задача пробежит или нет
    • Граф задач
    • Правила задач
  • Работа с логами
    • Контроль уровня логов
    • Лог для скрипта сборки
    • Логирование из классов
  • Плагины
    • Что такое плагины в Gradle?
    • Пакование и распространение плагинов
    • Обзор основных плагинов
  • Интеграция с Ant
    • Когда использовать Ant в Gradle
    • Использование тасков Ant в билде Gradle
    • Импорт Ant скрипта в Gradle
    • Миграция от Ant к Gradle
  • Управление зависимостями
    • Основные концепции
    • Репозитории, метаданные и транзитивные зависимости
    • Конфигурация зависимостей
    • Декларация зависимостей
    • Кастомизация резолюции зависимостей и решение конфликтов
    • Публикация артефактов (Maven & Ivy)
  • Расширение модели
    • Наследование от существующих объектов
    • Контейнер объектов и правила конфигурации
  • Задача ввода и вывода
    • Описание ввода и вывода
    • Инкрементальная сборка
    • Вывод зависимостей задачи
  • Java плагин
    • Source sets
    • Конвенции проекта
    • Автоматизированное тестирование
    • Сборка JAR
  • Многомодульная сборка

    • Определение сборки для многомодульного проекта
    • Впрыскивание конфигурации чтобы избежать дублирования
    • Межмодульные зависимости
    • Частичное исполнения зависимых проектов
  • Процесс сборки
    • Расширение возможностей
    • Местонахождение скриптов инициализации
    • Использование обертки Gradle

Тренер

Евгений Борисов

Даты

21-22 мая

Продолжительность

16 часов (2 дня)

Цена

3400 гривен за участника (обед включен).