MapStruct решение задачи с ManyToMany

Здравствуйте, уважаемые читатели! Те, кто разрабатывает Web приложения на Java с использованием фреймворка Spring, те кто комментирует эти приложения и просто интересующиеся. В предыдущей статье «Spring Boot решение задачи с ManyToMany» я приводил пример выполненного тестового приложения, в котором между двумя классами имеется bidirectional отношение ManyToMany. В статье приводился пример …

Компилируем Kotlin: JetBrains VS ANTLR VS JavaCC

Насколько быстро парсится Kotlin и какое это имеет значение? JavaCC или ANTLR? Годятся ли исходники от JetBrains? Сравниваем, фантазируем и удивляемся. Читать дальше → from Хабр / Java – объектно-ориентированный язык программирования https://ift.tt/2rEcwcW

Создаем Shape Map карту РФ в Power BI

Всем привет! Сегодня поговорим о “пространственном” анализе в Power BI. О самой платформе для бизнес аналитики, можно прочитать здесь. Я в посте разберу один аспект — как нарисовать карту РФ в Shape Map. Читать дальше → from Хабр / Java – объектно-ориентированный язык программирования https://ift.tt/2QPiDsS

[Из песочницы] Радость Haxe. Роман с обделенным вниманием языком программирования

Привет, Хабр! Представляю вашему вниманию перевод статьи The Joy of Haxe. FontStruct’s love affair with a neglected programming language. Довольно грубая попытка воспроизвести логотип Haxe в редакторе шрифтов FontStruct Недавно мы открыли исходный код наиболее важной части нашего модуля для создания шрифтов. Это библиотека fonthx для создания TrueType-шрифтов, и написана …

[Перевод] Разбираем лямбда-выражения в Java

От переводчика: LambdaMetafactory, пожалуй, один из самых недооценённых механизмов Java 8. Мы открыли его для себя совсем недавно, но уже по достоинству оценили его возможности. В версии 7.0 фреймворка CUBA улучшена производительность за счет отказа от рефлективных вызовов в пользу генерации лямбда выражений. Одно из применений этого механизма в нашем …

Devops, JUnit5 и тестирование микросервисов: субъективный взгляд на московский “Гейзенбаг”

6-7 декабря в Москве состоялась пятая по счёту конференция «Гейзенбаг». Её слоган — «Тестирование. Не только для тестировщиков!», и за два года регулярного посещения «Гейзенбагов» мне (прежде Java-разработчику, ныне — техническому лиду в маленькой компании, никогда не работавшему в QA) удалось многому научиться тему тестирования и многое внедрить в нашей …

[Из песочницы] Пример использования Java-библиотеки для создания Telegram-бота

Каждый разработчик (и не только), который использует Telegram в повседневной жизни, хотя бы раз задумывался о том, каково это — создать своего бота, на сколько это сложно и какой язык программирования лучше использовать? Читать дальше → from Хабр / Java – объектно-ориентированный язык программирования https://ift.tt/2QnKy3C

Spring + Firebird + REST. Часть 1 Конфигурирование проекта

Вместо вступления Если разбираешь что-то, попробуй это описать понятным языком и найти того, кто прочитает и выступит с замечаниями (перефразировал Р.Фейнмана, таки да я это сделал). Все комментарии, даже злобные в стиле “Да, что этот ~белый~~чел. себе позволяет” приветствуются. Цели: Приложения — отображение отчетов о ходе продукта (весы) по возможности …

Validators + Aspects: кастомизируем валидацию

Доброго времени суток, Хабр! Спустя некоторое время решил вновь написать сюда и поделиться своим опытом. На этот раз статья будет о том, как кастомизировать стандартные валидаторы, и вызывать их там, где нам будет нужно, используя Spring — аспекты. Ну а сподвигло меня на написание — практически отсутствие подобной информации, особенно …

Gradle 5.0 — что нового

В процессе разработки CUBA мы применяли все три основных инструмента сборки — начали с Ant, потом перешли на Maven на короткое время, а сейчас используем Gradle и, похоже, что в ближайшее время останемся с ним. Не так давно вышел Gradle 5.0. В этой версии появилось большое количество новых возможностей, которые …

[Перевод] Что такое Method Handles в Java

1. Вступление В этом туториале мы рассмотрим важный API, представленный в Java 7 и расширенный в новых версиях, java.lang.invoke.MethodHandles. Мы узнаем, что такое method handles, как их создавать и использовать. Читать дальше → from Хабр / Java – объектно-ориентированный язык программирования https://ift.tt/2AIHNPK

Идёт мобильный разработчик по лесу, видит — Котлин горит. Сел в Котлин и сгорел

Мир сходит с ума. Говорят, все новые мобильные проекты на Андроиде пишут исключительно на Котлине. В наше время очень опасно не учиться новым технологиям. Вначале твои знания устаревают, ты вылетаешь с работы, живешь у теплотрассы, дерёшься с бомжами за еду и умираешь в безвестности, так и не выучив функционального программирования. …

Ещё один dsl на Kotlin или как я печатал PDF из react

Нельзя просто взять и распечатать страницу написанную на React: есть разделители страниц, поля для ввода. Кроме того, хочется один раз написать рендеринг, чтобы он генерил как ReactDom, так и обычный HTML, который можно сконвертить в PDF. Самое сложное, что у React свой dsl, а у html свой. Как решить эту …

[Из песочницы] Сериализация в Java. Не все так просто

Сериализация (Serialization) — это процесс, который переводит объект в последовательность байтов, по которой затем его можно полностью восстановить. Зачем это нужно? Читать дальше → from Хабр / Java – объектно-ориентированный язык программирования https://ift.tt/2rcmUIr

Как собрать информацию с Контур.Закупки с помощью Selenium

Всем привет. История эта случилась из-за экономии. При покупке платного аккаунта мы даже не обратили внимание на то, сколько полезного даёт тариф Эксперт. Ах, если бы мы обратили на это внимание, то мне не пришлось бы осваивать Selenium и основы Java. Как-то раз возникла маркетинговая задача — собрать контакты закупщиков …

[Перевод] Эффективное управление транзакциями в Spring

Всем добрый день! Что ж, конец месяца у нас всегда интенсивные, вот и тут остался всего день до старта второго потока курса «Разработчик на Spring Framework» — замечательного и интересного курса, который ведёт не менее прекрасный и злой Юрий (как его называют некоторые студент за уровень требований в ДЗ), так …

Микросервисная архитектура на современном стеке Java-технологий

У нас были JDK 11, Kotlin, Spring 5 и Spring Boot 2, Gradle 5 с production-ready Kotlin DSL, JUnit 5, а ещё с полдюжины библиотек стека Spring Cloud для Service discovery, создания API gateway, клиентской балансировки, имплементации паттерна Circuit breaker, написания декларативных HTTP клиентов, распределённой трассировки и всего такого. Не …

GraphQL — API по-новому

Что такое язык запросов GraphQL? Какие преимущества дает эта технология и с какими проблемами столкнутся разработчики при ее использовании? Как эффективно использовать GraphQL? Обо всем этом под катом. В основе статьи — доклад вводного уровня Владимира Цукура (volodymyrtsukur) с конференции Joker 2017. Читать дальше → from Хабр / Java – …

CodeOne 2018, как JavaOne, но только в маске

Oracle Code One Code One (JavaOne до апреля 2018 года) — ежегодная конференция, посвященная продуктам Oracle и языку программирования Java, которая проходит в разных городах. Многие Java-разработчики хотят посетить это событие и планируют свое участие заранее. Мне, автоматизатору по тестированию в Сбертехе, посчастливилось принять участие в конференции, которая прошла в …

Apache Spark — достоинства, недостатки, пожелания

Мне давно хотелось изложить свои впечатления об Apache Spark, и тут как раз попалась на глаза вот эта статья от сотрудника Pivotal Robert Bennett: thenewstack.io/the-good-bad-and-ugly-apache-spark-for-data-science-work, опубликованная совсем недавно, 26 июня 2018. Это не будет перевод, а скорее все-таки мои впечатления и комментарии на тему. Читать дальше → from Хабр / …