Новости Java #25

• Главное событие этой недели – выход IntelliJ IDEA 2021.2, в которой появилось много нового. Перечислим ключевые изменения:

  • Project-wide анализ проектов на Java. Во вкладке Problems появилась кнопка Enable Project-Wide Analysis, которая включает живую проверку ошибок во всём проекте. При этом проекту для отображения ошибок даже не потребуется компиляция. Новшество доступно только в IntelliJ IDEA Ultimate.
  • Действия при сохранении. В настройках IDEA теперь есть вкладка Tools → Actions on Save, позволяющая включать действия, которые будут выполняться при сохранении: Reformat Code, Optimize imports, Rearrange code, Run code cleanup и Build project.
  • Новое UI для управления зависимостями Maven и Gradle. В IDEA теперь есть вкладка Dependencies, в которой можно искать зависимости по имени. При нажатии кнопки Add IDEA сама пропишет указанную зависимость в pom.xml или build.gradle.

Новшества, относящиеся непосредственно к Java: более точные и подробные описания инспекций, возможность назначить различные цвета подсветки модификаторов видимости (private/protected/public), новый wizard для создания проектов на JavaFX, а также новые инспекции.

• Антон Козлов из Azul объявил в рассылке OpenJDK голосование по созданию проекту CRaC (Coordinated Restore at Checkpoint).

• Брайан Гётц предложил добавить в Java возможность объявлять анонимные классы с произвольным количеством интерфейсов. Сейчас в Java анонимный класс может иметь только одного родителя:

var foo = new AbstractFoo(args);

Брайан предлагает расширить синтаксис, позволив указывать дополнительные интерфейсы с помощью оператора &:

var foo = new AbstractFoo(args) & RedFoo;

Такое улучшение сократит пробел между анонимными классами и лямбдами, которые всегда позволяли указывать пересечение:

var lambda = (Runnable & Serializable) () -> {
    // ...
};

Сейчас для рефакторинга такой лямбды в класс неизбежно придётся завести именованный класс. Если идея Брайана будет реализована, то лямбду можно будет легко сконвертировать в анонимный класс.

• Вышел Jetpack Compose 1.0.

• Вышла Apache Cassandra 4.0. Новая мажорная версия распределённой СУБД стала доступной спустя почти 6 лет после выхода версии 3.0.

Подписывайтесь на канал в Telegram, чтобы не пропускать новости.

Все материалы на этом сайте выложены под лицензией CC BY-SA 4.0
© Евгений Козлов, 2017-2024
Feed
Table of JEPs