Найти в Дзене
JavaSwag

Дайджест статей из мира Java:новинки контейнеризации в JDK 10, минусы стрим АПИ и генерация кода с помощью библиотеки JavaParser

Оглавление

Better Containerized JVMs in JDK10

JDK 10 выйдет уже в марте — да так скоро, и в новой версии есть нововведения по контейнеризации джавы. Теперь кол-во памяти и ЦПУ можно указать с помощью квот — параметров докера, которые виртуальная машина научилась понимать.

Example Spring Boot 2 application

Это пример приложения spring-boot 2 с самыми модными технологиями: Kotlin 1.2, Java 9, JUnit 5, TestContainers, WebFlux CRUD with Reactive MongoDB client.

Now You See Me, Now You Don’t: LinkedIn’s Real-Time Presence Platform

Инженеры Линкедин рассказывают как они реализовали статусы пользователей. С виду простая задача: отобразить зеленый кружок когда пользователь онлайн, серый — когда оффлайн и написать время последнего пребывания. Но внутри все не так просто. Реализовано все на акторах, но концепцию легко перенести и в наш джава мир.

JEP 325: Switch Expressions

Switch — достаточно старая конструкция языка. Для новичков она выглядит как рудимент и вызывает много вопросов. Java Enhancement Proposal(JEP) направлен на усовершенствование этой конструкции. Теперь можно использовать лямбда выражения в блоке с case без “все время забываемых” break и return.

JAVAPARSER TO GENERATE, ANALYZE AND MODIFY JAVA CODE

С помощью библиотеки JavaParser можно генерировать, читать, изменять джава код. У библиотеки понятный с первого раза АПИ. В статье несколько примеров, как работать с этой библиотекой. Пробегитесь глазами, возможно, библиотека пригодится вам, если вы устанете писать код и захотите сгенерировать его автоматически.

In an increasingly complex world, Java takes the right move

Рассуждения на тему как хорошо что появилась модульность, и как хорошо что появится проект Graal. Автор считает, что джава движется в правильном направлении.

HOW TO COMPILE GROOVY BEFORE JAVA IN A GRADLE BUILD

Компилим груви файлы перед джава файлами с помощью грейдла. Почему? Потому что можем!

Spliterator Characteristics and Performance

Внутри стримов спрятаны так называемые «характеристики» стрима, описывающие данные в стриме. Казалось бы что они очень полезны. Например, если мы сразу знаем count, то при вызове count() можно сразу вернуть уже готовое значение. Но характеритики эти используются не всегда и иногда влияют на производительность в неожиданных местах.

Java 8 – The Bad Parts

Разработчики так рады стримам и лямбда функциям из восьмой джавы, что готовы закрывать глаза на недостатки. Как и любые технологии стримы не идеальны — об этом в статье.

Introduction to Headless Chrome

Начиная с версии 59 браузер Хром теперь поддерживает запуск в режиме “без интерфейса”. Теперь для тестирования приложений мы можем использовать тот же браузер, что и обычные пользователи.

Йоу! Увидимся в следующем выпуске полезностей про джаву!
Йоу! Увидимся в следующем выпуске полезностей про джаву!