• Вышел ещё один JEP по проекту Valhalla: Unify the Basic Primitives with Objects (Preview). В нём предлагается мигрировать 8 примитивных типов Java (int
, long
, double
, float
, short
, byte
, char
, boolean
) таким образом, чтобы они стали экземплярами соответствующих классов-обёрток (Integer
, Long
, Double
, Float
, Short
, Byte
, Character
, Boolean
), которые сами станут примитивными классами. В такой схеме, например, тип int
станет алиасом для Integer.val,
а Integer
– к int.ref
.
Благодаря такой унификации у примитивных типов появятся свойства, которых у них не было с самого появления языка: наследование, наличие методов (17.toString()
, 23.compareTo(42))
и возможность быть параметрами дженериков (будет отдельный JEP).
• В рассылке OpenJDK предложили перевести проект jdk11u на Git. Так как переход 16u и 13u на Git уже совершён, то это поможет унифицировать процесс разработки обновлений разных мажорных версий JDK. Переход на Git предлагается сделать к июню 2021 года, когда начнётся работа над JDK 11.0.13.
• Компания JetBrains начала программу раннего доступа (EAP) к своему новому продукту Qodana – платформы для статического анализа и измерения качества кода. Qodana состоит из двух частей: движок для запуска анализа в CI и веб-панель с отчётами. Статический анализатор кода представляет собой движок IntelliJ IDEA без графического интерфейса, и его можно запустить на любом CI-сервере. Для TeamCity есть готовый плагин.
• Николай Парлог (aka nipafx) выложил на YouTube интервью с Брайаном Гетцом про то, почему сериализация, nullability, мутабельность и другие аспекты сделаны умолчательными в Java, и можно ли это было сделать по-другому.