Компания Axiom JDK выпустила новый релиз отечественной среды разработки и исполнения Java Axiom JDK Pro 23. Это важный вклад в безопасность и функциональную надежность отечественных приложений и сервисов, работающих на Java. Продукт включает значимые улучшения и перспективные возможности по двенадцати направлениям и предлагает повышение производительности, улучшение безопасности и упрощение процесса разработки. Всего в релиз внесено 2548 изменений и предложено 12 JEP с усовершенствованиями.
Axiom JDK Pro 23 продолжает внедрение инноваций мирового уровня и готовит разработчиков к плавной миграции на LTS-версию с долгосрочной поддержкой. Среди ключевых улучшений — усовершенствованные функции Pattern Matching, которые позволяют ускорить написание программ и снизить вероятность ошибок благодаря безопасной работе с типами данных. С форматированием Markdown стала проще автоматическая генерация документации, важная часть жизненного цикла ПО. А удаление почти всех методов Unsafe API позволит повысить безопасность и производительность, но потребует обновления библиотек, с чем поможет доверенный репозиторий Java-библиотек от инженеров Axiom JDK.
Клиенты могут быть уверены в бесперебойной работе систем на отечественной платформе Java и выполнении требований регуляторов. Axiom JDK разрабатывается в соответствии с промышленным процессом безопасной разработки, что облегчает ИТ-командам контроль операционной надежности ПО на всех этапах использования. Каждая сборка проходит тщательное тестирование QA/QC, включая регрессионные тесты, фаззинг, а также структурный, динамический и статический анализ. Среди дополнительных функций безопасности Axiom JDK — улучшенные сборщики мусора, сертифицированная ФСТЭК версия, проверенные исходные коды самых популярных Java библиотек, экстренные патчи безопасности и др.
«Безопасность корпоративных ИТ-систем, большинство из которых работают на Java, критически важна для поддержки непрерывности бизнеса и защиты его от внешних угроз. Эксплуатируемые уязвимости, которые компании могли игнорировать годами, представляют собой серьезный риск, и нет гарантии, что завтра они не будут использованы злоумышленниками. Поэтому CТО и директора по ИБ должны уделять особое внимание обновлению платформы Java, на которой работают критически важные системы, одновременно решая задачи по импортозамещению и оптимальному распределению своих ИТ-ресурсов, — подчеркнул Сергей Лунегов, директор по продуктам Axiom JDK. — Мы рады предоставить прогрессивную Java-платформу с обновлениями 6 раз в год и круглосуточную поддержку команды, инженеры которой заботятся о безопасности Java с 1997 года, для обеспечения бесперебойной работы КИИ и государственных сервисов».
Релиз Axiom JDK Pro 23 доступен в трех вариантах: Full, Standard и Lite, что позволяет оптимизировать и сохранять вычислительные ресурсы. Версия Lite предназначена для высокоплотного развертывания контейнеризованных приложений и эффективного использования облачных ресурсов. Версия Standard подходит для большинства применений на десктопах и серверах. Версия Full включает полный набор и дополнительные пакеты, такие как OpenJFX, MinimalVM, Device Input-Output API.
Всего в JDK 23 внесено 2548 изменений и 12 JEP с новыми или улучшенными функциями. Наиболее значимые из них включают:
Упрощение процесса разработки:
- JEP 455: Примитивные типы в шаблонах pattern matching, instanceof и switch позволяют ускорить написание кода и снизить вероятность ошибок благодаря безопасной работе с типами данных (превью);
- JEP 466: Class-File API будет развиваться вместе с форматом класс-файлов и позволит использовать его вместо сторонних библиотек (второе превью);
- JEP 467: Поддержка Markdown в JavaDoc-комментариях еще более упростит автоматическую генерацию документации;
- JEP 473: Stream Gatherers усовершенствуют Stream API поддержкой пользовательских intermediate-операторов (второе превью);
- JEP 476: Импортирование модулей позволит импортировать сам модуль вместо явного импортирования его отдельных пакетов (превью);
- JEP 477: Неявные классы и main-методы экземпляра класса помогают писать лаконичные приложения без компонентов для крупных систем (третье превью);
- JEP 482: Гибкий конструктор сможет инициализировать поля в том же классе перед явным вызовом конструктора (второе превью).
Улучшение безопасности:
- JEP 471: Подготовка к удалению методов доступа к памяти в sun.misc.Unsafe позволит повысить безопасность и производительность, но потребует обновления библиотек;
- JEP 481: Scoped Values позволяют расшаривать неизменяемые данные в рамках одного потока и между потоками (третий превью).
- JEP 469: Vector API использует SIMD-инструкции (Single Instruction, Multiple Data), распараллеливая векторные вычисления (восьмой инкубатор);
- JEP 474: Сборщик мусора ZGC по умолчанию — generational — помогает снизить затраты на поддержку двух сборщиков мусора ZGC: non-generational и generational;
- JEP 480: Структурированный параллелизм рассматривает группы связанных задач, выполняемых в разных потоках, как единое целое (третий превью).