Привет, Java 17: что нового

Привет, Java 17: что нового

04.10.2021      15473

Oracle официально представила новую общедоступную версию Java 17. Три ключевых изменения: использование только строгой семантики чисел с плавающей точкой, единый API (прикладной программный интерфейс) для генераторов псевдослучайных чисел и отдельный API сторонних функций и памяти.

В Java 17 включили четырнадцать 14 JEP (предложений по улучшению). Разработчики закрыли свыше 2,7 тыс. задач и серьезно обновили API.

Всегда строгая семантика

В JEP 306 восстановили всегда строгую семантику чисел с плавающей точкой. Напомним, до Java 1.2 по умолчанию использовалась нестрогая семантика. Теперь же на всех платформах выражения с плавающей точкой вычисляются строго, а значит, можно не использовать ключевое слово strictfp – если оно будет обнаружено в коде, система выдаст предупреждение.

Это нововведение должно упростить разработку библиотек, которые чувствительны к числовым значениям. От введения всегда строгой семантики точно выиграют Java.lang.Math и java.lang.StrictMath и другие подобные решения.

API сторонних функций и памяти

В рамках JEP 412 создали Foreign Function & Memory API. Это продвинутая версия нативного интерфейса JNI, в которой по умолчанию запрещены потенциально небезопасные операции. Это повысит стабильность кода и производительность его выполнения.

С новым API можно также по-разному взаимодействовать с памятью вне кучи. А в будущем – задействовать внешние функции не только на С, но и на других языках.

Но JNI по-прежнему доступен. Если ваше приложение использует его, переход на Java 17 не будет критичным.

Изменения в фильтрах

В Java 9 появились фильтры для контроля десериализации данных. В 17 версии их сделали более гибкими – в JEP 415 внедрили фабрику фильтров.

Вы можете не указывать конкретный фильтр для каждого объекта ObjectInputStream и не запускать глобальный статический фильтр для всей виртуальной машины. Достаточно указать статическую фабрику, например, через метод ObjectInputFilter.Config::setSerialFilterFactory или аргументы командной строки. Она автоматически будет возвращать нужный фильтр в зависимости от контекста.

Фильтры нужны для проверки входящих потоков данных, которые поступали со стороны библиотеки и кода приложения. Так как можно удалить потенциально вредоносный код прямо в процессе десериализации, безопасность разработки повысится.

API для генераторов псевдослучайных чисел

В JEP 356 добавили пакет java.util.random с новыми интерфейсами и свежей реализацией генераторов псевдослучайных чисел. В этой иерархии RandomGenerator является родителем для свежих генераторов SplittableRandomGenerator, JumpableRandomGenerator, LeapableRandomGenerator, ArbitrarilyJumpableRandomGenerator, а также ранее использованных инструментов – Random, ThreadLocalRandom и SplittableRandom.

Механизм ServiceLoader позволяет использовать собственные или сторонние реализации генераторов. Это актуально для финансовых и беттинг-приложений, а также других разработок со сложной криптографией.

Новый рендер-конвейер

С JEP 382 разработчики перешли от OpenGL на Apple Metal API.

Обновленный рендер-конвейер соответствует модели существующего двумерного аналога. Он пока включен по умолчанию, но можно активировать и новую версию ключом -Dsun.java2d.metal=true. Если же OpenGL не работает, то используется Apple Metal.

Здесь же отметим, что разработчики сделали специальный порт под архитектуру macOS/AArch64. Для процессоров Apple M1 уже выложены дистрибутивы открытого OpenJDK и проприетарного Oracle JDK.

Строгая инкапсуляция внутренних API

В Java 9 показали инкапсуляцию внутренних прикладных интерфейсов, но до 16 версии включительно она была выключена по умолчанию. Теперь, с внедрением JEP 403, ее нельзя включить единственной командой --illegal-access=permit Main.

Чтобы иметь доступ к внутренним компонентам JDK, необходимо явно перечислить все нужные пакеты в опциях --add-opens или --add-exports. Но критического API в модуле jdk.unsupported эти изменения не касаются: все классы в пакетах sun.misc и sun.reflect по-прежнему доступны по умолчанию.

Java 17 – LTS-версия с расширенной поддержкой

Java 17 – стабильная версия с LTS (Long-Term Support) поддержкой: ожидается, что она продлится до сентября 2026 года. Предыдущая LTS-версия JDK 11 была выпущена три года назад.

Релиз Java 17 в традиционном формате OpenJDK выпускается со свободной лицензией GNU General Public License v2. Для тех, кто использует Java как часть продукта либо сервиса Oracle или же хочет получить платную поддержку, есть коммерческая лицензия.


Источник: https://infostart.ru/journal/news/tekhnologii/privet-java-17-chto-novogo_1527678/
Автор:
Ксения Шестакова Обозреватель


В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
В этой теме еще нет сообщений.
Оставьте свое сообщение

См. также

Специальный алгоритм очистит данные переписи населения

Новость Искусственный интеллект ИТ-новость

В России завершился первый этап Всероссийской переписи населения. Росстат будет в автоматическом режиме очищать собранные данные от продублированных записей при помощи российской BI-системы.

вчера в 10:13    3547    VKuser24342747    0       

В офисах Google появились универсальные роботы

Новость Автоматизация ИТ-новость Новости компаний

Офисы Google в Маунтин Вью, штат Калифорния, теперь станут гораздо чище. К уборке привлекли универсальных роботов, разработанных X Company, которая, как и поисковый гигант, входит в состав холдинга Alphabet.

25.11.2021    4146    user1015646    2       

Вышло крупное обновление для TypeScript с автодополнением кода

Новость ИТ-новость Языки программирования

Команда разработки TypeScript представила версию языка под номером 4.5. В ней улучшена производительность технологии, расширены возможности автодополнения и упрощено переподключение библиотек.

24.11.2021    5631    VKuser24342747    4       

GitHub назвал три ключевых тренда в разработке за 2021 год

Новость GitHub Аналитика ИТ-новость

GitHub провел традиционное ежегодное исследование Octoverse, чтобы определить основные направления развития ИТ-индустрии. В 2021 году актуальными стали вопросы быстрого написания кода и подготовки документации.

24.11.2021    5025    VKuser24342747    0       

Рособрнадзор прекратит использовать Windows при проведении ЕГЭ

Новость Импортозамещение ИТ-новость

Единый государственный экзамен к концу 2024 года будет проходить без использования ОС Windows во всех местах, где можно сдать тестирование. Вместо нее будет установлена российская система.

23.11.2021    4026    VKuser24342747    5       

Google выпустил версию браузера Chrome 96

Новость Интернет ИТ-новость Новости компаний

Новая актуальная версия Google Chrome 96 получила расширение инструментов для веб-разработчиков и экспериментальные функции в мобильной версии.

23.11.2021    3922    VKuser24342747    1       

Через Госуслуги компании подтвердили 13,3 млн корпоративных SIM-карт

Новость Безопасность ИТ-новость Телекоммуникации

Министерство цифрового развития сообщило, что компании соблюдают новые требования закона «О связи» и уже зарегистрировали на портале госуслуг 13,3 млн рабочих SIM-карт.

22.11.2021    4621    VKuser24342747    1       

Visual Studio 2022 и .NET 6: что нового

Новость ИТ-новость Новости компаний Языки программирования

Microsoft выпустила свежий релиз одной из самых популярных сред разработки. Вместе с Visual Studio 2022 представили обновленную платформу .NET 6.

22.11.2021    5127    user1015646    0       

Программист разработал поисковую систему без слежки за пользователями

Новость Безопасность Интернет ИТ-новость

Бывший разработчик из компании Salesforce Ричард Сокер открыл публичный доступ к своему поисковому сервису You. В нем нет никаких трекеров личных данных и рекламных материалов.

18.11.2021    4068    VKuser24342747    3       

«Сбер» обучил нейросеть ruGPT-3 генерировать программный код

Новость Искусственный интеллект ИТ-новость Новости компаний

Новая функция самой большой генеративной AI-модели для русского языка получила название JARVIS. Сейчас сервис способен работать с языками программирования Java, Python и JavaScript.

18.11.2021    4312    VKuser24342747    2       

Университет Иннополис создал уникальный российский индустриальный блокчейн

Новость Блокчейн ИТ-новость

В России разработан блокчейн InnoChain, который предназначен для использования в закрытых сетях. С его помощью можно подписывать договоры и планировать объемы продаж.

17.11.2021    5281    VKuser24342747    0       

В Dropbox появились «автоматизированные папки» и новая система тегов

Новость ИТ-новость Облачные технологии

Dropbox добавил в свой облачный сервис функции, которые позволят автоматизировать работу с общими папками и файлами. К ним относятся автоматизированные папки, автоматизированная панель инструментов, соглашения об именах и многофайловая организация.

17.11.2021    4082    SKravchenko    1       

Microsoft выпустит платформу Defender for Business

Новость ИТ-новость Новости компаний

Microsoft Defender for Business станет частью комплексного решения Microsoft 365 Business Premium, которое объединяет Microsoft Teams и Office 365 с основными инструментами безопасности для малого и среднего бизнеса.

16.11.2021    2404    SKravchenko    0       

Adobe Photoshop и Illustrator стали доступны онлайн

Новость

У популярных графических редакторов появились веб-версии. Они позволяют редактировать фото, не устанавливая требовательные к ресурсам приложения на компьютер или смартфон, и включают достаточно широкий набор инструментов.

11.11.2021    3536    user1015646    0       

Что нового в SQL Server 2022

Новость СУБД MS SQL ИТ-новость Новости компаний

Microsoft на ежегодной конференции Microsoft Ignite анонсировала предварительную версию SQL Server 2022 – теперь СУБД включает интеграцию с базой Azure SQL, службой аналитики Azure Synapse Analytics и платформой управления данными Azure Purview.

11.11.2021    7266    SKravchenko    0       

«Сбер» представил нейросеть для генерации картинок по описанию

Новость Искусственный интеллект ИТ-новость

Сервис ruDALL-E способен генерировать изображения с нуля по текстовому описанию на русском языке. Авторы полагают, что модель будет полезна для создания рекламного, архитектурного и промышленного дизайна.

11.11.2021    4809    VKuser24342747    10       

Правительство собирается определить главный российский процессор

Новость Импортозамещение ИТ-новость

Минцифры и Минпромторг намерены выбрать приоритетную российскую микропроцессорную платформу. Разработчики отечественного ПО будут обязаны поддерживать ее.

10.11.2021    4940    VKuser24342747    4       

Первая стабильная версия Microsoft Edge стала доступна для Linux

Новость Linux Интернет ИТ-новость

В репозиториях Linux на портале Microsoft появилась стабильная версия браузера Edge. Пакет под названием microsoft-edge-stable_95 доступен для пользователей Ubuntu, Debian, Fedora и openSUSE.

10.11.2021    5011    VKuser24342747    0       

Microsoft выпустит версию Windows 11 для слабых компьютеров

Новость Windows ИТ-новость

Microsoft намерена представить ОС Windows 11 SE для устройств начального уровня. Для работы операционной системы будет достаточно ноутбука на базе процессора Intel Celeron.

08.11.2021    4118    VKuser24342747    3       

Нейросеть GitHub Copilot стала доступна в Neovim и разработках JetBrains

Новость GitHub Искусственный интеллект ИТ-новость

Ассистент программиста GitHub Copilot, генерирующий код при помощи ИИ, включен в последние версии редактора кода Neovim, а также в IDE IntelliJ и PyCharm от компании JetBrains.

08.11.2021    7309    VKuser24342747    1       

Правительство совместно с ИТ-компаниями подготовили кодекс этики в сфере ИИ

Новость Искусственный интеллект ИТ-новость

Правительство, «Сбер», «Яндекс», VK и другие российские компании подготовили документ, который содержит рекомендации для бизнеса по морально-этическим вопросам использования ИИ.

03.11.2021    4822    VKuser24342747    8       

Аналитики Gartner назвали 12 наиболее перспективных технологий в 2022 году

Новость Аналитика ИТ-новость

Компания Gartner составила список технологий и стратегий, которые уже будут применяться в 2022 году и окажут наиболее существенное влияние на бизнес-среду в ближайшие несколько лет.

03.11.2021    4952    VKuser24342747    2       

Российская компания создала технологию для борьбы с поддельными QR-кодами

Новость Безопасность ИТ-новость

Разработчики из Pro Control создали некопируемый QR-код, поддерживающий двухфакторную систему проверки. Он содержит внутреннюю матрицу, которую нельзя размножить.

02.11.2021    5715    VKuser24342747    0       

Минцифры создаст приложение для чиновников с мессенджером и облачным хранилищем

Новость Безопасность ИТ-новость Мессенджеры Минкомсвязь Мобильные приложения Облачные технологии Цифровая экономика

Минцифры намерено разработать для госслужащих суперприложение, в котором будет доступен набор защищенных инструментов связи. Стоимость реализации проекта – чуть менее 500 млн рублей.

29.10.2021    5243    VKuser24342747    1       

Энтузиаст нашел способ установить Google Play на Windows 11

Новость Windows Android ИТ-новость Мобильные приложения

Пользователь ADeltaX сумел обойти ограничения предварительной версии Windows 11 и установить на устройство магазин Google Play, который позволил запускать любые Android-приложения на ПК.

29.10.2021    8184    VKuser24342747    0