Как стать автором
Обновить
1.25

Groovy & Grails *

Язык программирования Groovy и фреймворк Grails

Сначала показывать
Порог рейтинга
Уровень сложности

Создание микросервисов на Groovy с Micronaut

Время на прочтение5 мин
Количество просмотров796

Micronaut — фреймворк для ЯП Groovy. Он предназначен для создания микросервисов и серверных приложений на JVM. Он был разработан с учетом всех недостатков и ограничений предыдущих фреймворков, таких как Spring и Grails.

В статье рассмотрим, как работать в Groovy с Micronaut на практическом примере.

Читать далее
Всего голосов 7: ↑4 и ↓3+5
Комментарии2

Новости

Функциональное программирование на Groovy

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.4K

Функциональное программирование подразумевает стиль кодирования, акцентирующий внимание на использовании функций и минимизации изменений состояния с помощью неизменяемых структур данных. В Groovy, который изначально разрабатывался как более гибкая альтернатива Java, функциональное программирование представляет собой не только стиль, но и хороший инструмент для решения сложных задач.

В этой статье мы разберём, как реализовано функциональное программирование в Groovy.

Читать далее
Всего голосов 8: ↑7 и ↓1+9
Комментарии4

Как аналитик учился java log читать. Часть первая: логи бывают разные

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2K

Когда я пришёл работать в компанию GreenData шесть лет назад, мои задачи были достаточно стандартными для аналитика, который работает с low-code решениями. Работа с объектной моделью, написание алгоритмов, настройка визуалов - всё что обычно выполняет начинающий специалист в данной области. Однако в процессе моей работы и роста иногда я сталкивался с необходимостью разбираться в тонкостях работы Java, а именно с ошибками, которые возникали в процессе её исполнения.

Эти встречи с Java сначала были случайностью, но со временем превратились в моё новое профессиональное увлечение. Каждый случай сбоя или нестандартного поведения программы становился для меня вызовом; я понял, что за ошибками стоят не просто коды и сообщения, а целые истории о том, как работает система. Этот интерес постепенно перерос в глубокое погружение в мир Java-логов, благодаря чему я стал одним из ведущих экспертов по анализу программных сбоев в компании.

Читать далее
Всего голосов 5: ↑4 и ↓1+7
Комментарии0

Что такое Java Spring и как с ним работать

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров8K

«Фреймворк фреймворков» — так часто называют Java Spring. Зачем он нужен и какие у него есть плюсы и минусы, рассказывает специалист по Java, техлид в финтех-проекте Егор Воронянский.

Читать далее
Всего голосов 20: ↑4 и ↓16-8
Комментарии3

Тестируем Spring Boot приложения через Spock Framework

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.1K

Написание тестов - важная часть создания качественного ПО, но в то же время кажется неинтересным и утомительным занятием. Попробуем улучшить этот процесс, объединив сразу несколько крутых технологий.

В статье описан процесс интеграции Spring Boot и Spock Framework, а также приведены примеры тестирования в BDD подходе.

Читать далее
Всего голосов 5: ↑3 и ↓2+3
Комментарии1

Jenkinsfile – это не Groovy

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров3.9K

Я не нашел в документации к Jenkins утверждения, что Jenkinsfile пишется на Groovy, но количество отсылок к Groovy столь велико, что у многих людей создаются ложные ожидания.

Я решил написать этот пост после многократного объяснения коллегам отличий скрипта Jenkinsfile от Groovy.

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии15

Миграция конфигурации сборки с Groovy на Kotlin

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров5.7K

DSL (Domain-Specific Language) — это язык программирования, который спроектирован и оптимизирован для решения задач в конкретной области или для определенного класса задач. DSL build.gradle предоставляет разработчикам удобный способ определения настроек проекта и управления ими, используя специфический синтаксис, который Gradle понимает и обрабатывает. Этот DSL позволяет создавать мощные и гибкие сценарии сборки, которые могут быть легко настраиваемы для разных проектов и задач.

С Android Studio Giraffe Kotlin DSL становится новым стандартом для Gradle-скриптов в разработке Android. Когда вы создаете новые проекты, используя встроенные шаблоны IDE, вам будут предоставлены файлы Kotlin DSL вместо файлов Gradle на основе Groovy.

Это предстоящее изменение обеспечило возможность  переноса конфигураций Gradle на основе Groovy DSL на Kotlin DSL. Перевод файлов Gradle с Groovy на Kotlin DSL может значительно улучшить рабочий процесс разработки для Android. Особенно, если вы уже знакомы с Kotlin. Такой переход на единый знакомый язык не только повышает вашу производительность, но и устраняет необходимость переключаться между двумя языками для выполнения задач разработки и настройки. Надежность и интуитивность Kotlin DSL дает уверенность в создании пользовательских задач Gradle без необходимости прибегать к зачастую нечеткому синтаксису Groovy.

Статья задумана, как руководство, которое поможет вам на этапе перехода на Kotlin DSL. Материал написан с акцентом на проекты Android, но обсуждаемые моменты могут быть применимы и к другим проектам на основе Gradle, таким как приложение Spring Boot.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии2

Замыкания в Groovy

Время на прочтение5 мин
Количество просмотров2.7K

В этом ознакомительном учебном пособии мы рассмотрим концепцию замыканий в Groovy, являющуюся ключевой особенностью этого динамичного и мощного языка JVM. Концепцию замыканий поддерживают и многие другие языки, включая Javascript и Python. Однако в разных языках характеристики и функционирование замыканий различаются. Мы рассмотрим ключевые аспекты замыканий в Groovy, попутно демонстрируя примеры их использования.

Читать далее
Всего голосов 12: ↑8 и ↓4+6
Комментарии1

Учебное пособие: Файл Jenkins Pipeline с Apache Groovy

Время на прочтение12 мин
Количество просмотров9.1K

Этот учебник по Groovy для Jenkins покажет вам, как использовать скрипт Apache Groovy для построения пайплайна Jenkins. Groovy подойдет для начинающих и является хорошим выбором при объединении командных скриптов.

Читать далее
Всего голосов 9: ↑8 и ↓1+10
Комментарии1

Знакомство с Groovy DSL на примере из Gradle

Время на прочтение3 мин
Количество просмотров2.1K

Если вы пользовались системой сборки Gradle, то, вероятно, уже применяли и извлекали пользу из DSL-возможностей языка Groovy. В этой статье давайте рассмотрим такой пример.

Читать далее
Всего голосов 7: ↑5 и ↓2+4
Комментарии1

Лучшие практики скриптования в Jira Server/Data Center

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров2.9K

Всем привет! Меня зовут Сергей Трошин, я администратор Atlassian в VKCO. Заметил, что в интернете мало концентрированной информации про написание автоматизаций на Groovy с помощью API Jira Java. Тема достаточно важная, так как ни одна серьёзная компания не обходится без сложных средств автоматизации бизнес-процессов. В большинстве случаев таким средством является плагин Scriptrunner от Adaptavist, именно на нём написаны скрипты, фрагменты из которых используются в этой статье. Но мы не будем зацикливаться на инструменте, позволяющим обращаться к API Jira Java, это не играет роли.

Читать далее
Всего голосов 25: ↑25 и ↓0+25
Комментарии2

Jenkins pipelines с Groovy

Время на прочтение8 мин
Количество просмотров16K

Добрый день, коллеги. Jenkins является одной из самых популярных систем CI/CD, которая применяется для построения пайплайнов сборки и доставки.

Jenkins поддерживает построение пайплайнов на основе Groovy скриптов. Использование Groovy дает возможность очень гибко настраивать пайплайны под нужды конкретного проекта.

Рассмотрим основы построения пайплайнов в Jenkins с использованием Groovy скриптов.

Groovy - это объектно-ориентированный язык программирования, использующий платформу JVM. Этот динамический язык имеет множество возможностей, вдохновленных Python, Smalltalk и Ruby. Он также предлагает множество функций для повышения скорости и удобства написания кода, таких как поддержка DSL, замыкания и динамическая типизация.

Почему стоит использовать Groovy в Jenkins?

Читать далее
Всего голосов 10: ↑8 и ↓2+9
Комментарии10

Geb Framework для автотестов

Время на прочтение7 мин
Количество просмотров1.7K

Добрый день, коллеги. Один из самых известных и популярных фреймворков для написания автотестов - это Selenium. У этого фреймворка множество плюсов и возможностей, но в то же время есть некоторые неудобства в конфигурации, настройке и написании тестов. Поэтому появились фреймворки, которые расширяют Selenium.

Один из таких фреймворков - Geb Framework, он написан на Groovy и использует возможности groovy DSL на полную мощность.

Прежде чем приступать к изучению Geb и работе с ним, необходимо освежить в памяти темы, связанные с Groovy:

Читать далее
Всего голосов 10: ↑8 и ↓2+7
Комментарии0

Ближайшие события

Эти 10 новых возможностей делают Groovy 4.0 потрясающим

Время на прочтение7 мин
Количество просмотров4.1K

Изолированные (sealed) типы, switch-выражения и типы record. Это лишь несколько из новых фич, появившихся в последнем выпуске Groovy 4.0. В этом видео я хочу показать вам десять вещей, которые делают Groovy 4.0 удивительным. Чтобы не делать его слишком затянутым, мы не станем глубоко погружаться в каждую из них. Вместо этого я намерен дать вам краткий обзор новых возможностей.

Читать далее
Всего голосов 8: ↑5 и ↓3+4
Комментарии2

От кода «на коленке» к эффективному CI/CD: строим общий Pipeline as Code командой в 100+ человек

Время на прочтение9 мин
Количество просмотров7.2K

Много команд, много продуктов, каждый автоматизирует релизный цикл, у каждого свой набор скриптов. Дублирование, отсутствие обмена практиками и повторное изобретение колеса приводит к тому, что команды тратят много времени на построение своего CI/CD. И все это поддерживает микросервисную архитектуру, где автоматизации нужно уделить особое внимание.

Меня зовут Владимир Цыбров, я релиз-инженер Леруа Мерлен и сегодня расскажу, какие в компании были подходы к построению пайплайнов и улучшению качества их кода. Спойлер: мы использовали подход InnerSource и предоставили командам self-service-инструменты.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии3

Ускоряем Groovy скрипты

Время на прочтение4 мин
Количество просмотров3.4K

AST (Abstract Syntax Tree) преобразование для исполнения Groovy скриптов с @CompileStatic


Введение


Предположим у Вас есть некоторый скрипт который работает с некоторым бизнес объектом, скажем Person.


Groovy script


    person.name = 'Peter'

У Groovy есть замечательная фича @CompileStatic, которая заставляет компилятор Groovy компилировать скриптовый код статически (как это делает компилятор Java), что значительно ускоряет исполнение скрипта, но к сожалению в нашем случае простого (plain) скрипта у нас просто нет места где мы можем применить эту аннотацию. Вы знаете что @CompileStatic применяется либо к методу или классу. Давай сначала попробуем решить эту проблему вручную.

Читать дальше →
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

«Атака клонов» или пишем макрос для клонирования репозитория GitLab внутрь XWiki

Время на прочтение8 мин
Количество просмотров1.9K

Наконец-то я "раздобыл" немного свободного времени, а значит пришла пора продолжить серию туториалов по XWiki.

После публикации одной из моих статей MaxK82 спросил у меня, можно ли как-то в XWiki подключить документацию из git репозитория, так чтобы наладить её версионирование. К сожалению эта статья не ответит на его вопрос, но возможно укажет направление, в котором стоит "копать".

Поэтому сегодня мы с вами:

- создадим простенький, но зато свой макрос в XWiki;

- клонируем прямо в XWiki репозиторий с GitLab;

- отобразим Readme.md из репозитория внутри страницы XWiki.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Блеск и нищета фреймворков тестирования: используем Groovy для скриптинга end-to-end тестов

Время на прочтение8 мин
Количество просмотров3.5K

Безусловно, тестирование важный аспект разработки ПО. Наличие тестов - это хорошо, а удобное тестирование - еще лучше. В этой статье я расскажу как запускать тесты, написанные на groovy без gradle, maven и даже без предварительной компиляции этих тестов, а также почему JUnit 5 - это намного больше, чем просто хорошая библиотека для unit тестов.

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии5

Прощай, Grails. Привет, Micronaut. Окончание

Время на прочтение20 мин
Количество просмотров1.6K

Это третья и последняя статья из цикла о миграции из Grails в Micronaut. Обратите внимание: ваше приложение должно быть создано в Grails 4.x или более поздней версии.

В этой статье поговорим о сервисах, контроллерах, приложении Micronaut, Micronaut Data.

Первую статью (о многомодульных проектах, конфигурации и статической компиляции) можно прочитать здесь.

Вторую статью (о датасетах, маршалинге и классах предметной области) можно прочитать тут.

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии0

Прощай, Grails. Привет, Micronaut. Продолжение

Время на прочтение9 мин
Количество просмотров1.5K

Это вторая статья из цикла о миграции из Grails в Micronaut. Обратите внимание: ваше приложение должно быть создано в Grails 4.x или более поздней версии.

Всего в цикле публикаций о миграции из Grails в Micronaut 10 частей:

Многомодульный проект
Конфигурация
Статическая компиляция
Датасеты
Маршалинг
Классы предметной области
Сервисы
Контроллеры
Приложение Micronaut
Micronaut Data

В этой статье поговорим о датасетах, маршалинге и классах предметной области.

Первую статью (о многомодульных проектах, конфигурации и статической компиляции) можно прочитать здесь.

Читать далее
Всего голосов 5: ↑2 и ↓3+1
Комментарии0