Java модернизируется: новые инструменты для ИИ и квантового возраста

С тех пор, как в 2006 году Sun Microsystems Open Soursed Java инновации вытекали из его лояльного и творческого сообщества развития. Нынешний Corporate Caretaker Java Oracle сохранил традицию, которую она унаследовала в приобретении Sun 2010, с выпуском Java 24 (Oracle JDK 24) в Javaone 2025 в начале этого месяца.

Последняя итерация широко используемого языка и платформы разработки программирования содержит значительные достижения, направленные на производительность разработчиков и улучшенные возможности приложения предприятия. JDK 24 включает в себя обновление, которое охватывает языковые функции, библиотеки, безопасность, инструменты и производительность — почти все важное на платформе.

По словам аналитика IDC Arnal Dayaratna, Java продолжает развиваться и остается ценной, удовлетворяя потребности разработчиков, особенно в сфере применений с AI. Жорж Сааб, старший вице-президент Oracle, процитировал инклюзивный характер Java 24, который охватывает более 20 новых функций, в том числе ИИ и поддержку криптографии после Этот релиз подтверждает приверженность Oracle предсказуемому каденции шестимесячного выпуска.

Несколько квантовых элементов перечислены ниже. Наиболее важным обновлением, связанным с AI, является JEP 489 (Vector API), которое ускоряет векторные вычисления-решающее значение для вывода ИИ и вычислительных задач. Это, несомненно, получит много использования от разработчиков ИИ.

Здесь, согласно спецификациям Oracle, являются подробности о улучшениях JDK24:

Укрепление безопасности

Java 24 приоритет безопасности, особенно перед лицом возникающих квантовых вычислительных угроз.

  • Дает 478 (API функции ключа вывода) улучшает криптографическую безопасность для данных в транзите.
  • Дает 496 (Квантово устойчивый Дает 497 (Алгоритм цифровой подписи на основе квантового резистентного модуля) обеспечивает реализации квантово-устойчивых механизмов, что является важным шагом к поддержке криптографии после кванта. Эти функции решают необходимость безопасной коммуникации и аутентификации данных в мире пост-кванта.

Языковые обновления

Ключевые языковые функции, направленные на оптимизацию разработки и повышения надежности кода.

  • Дает 488 (Примитивные типы в схемах, экземпляре и коммутаторе) обеспечивают большую однородность и выразительность, расширяя соответствие паттернов до примитивных типов, принося пользу приложениям для вывода ИИ.
  • Дает 492 (Гибкие тела конструктора) повышает надежность кода за счет введения различных фаз пролога и эпилога в органах конструкторов, упрощая логическое размещение.
  • Дает 494 (Объявления импорта модуля) упрощает повторное использование модульных библиотек, особенно полезно для начинающих и разработчиков, интегрирующих логику ИИ.
  • Дает 495 (Простые исходные файлы и основные методы экземпляра) предлагает плавную кривую обучения для новых программистов и позволяет опытным разработчикам писать краткие небольшие программы.

Библиотека дополнений

Несколько значительных библиотечных улучшений.

  • Дает 485 (Сборщики потока) Увеличивает API потока, позволяя выполнять пользовательские промежуточные операции и более эффективное преобразование данных.
  • Дает 484 (Class-File API) предоставляет стандартный API для анализа, генерирования и преобразования файлов класса Java.
  • Дает 487 (Обзорные значения) Улучшает обмен неизменными данными по потокам, повышая производительность и надежность.
  • Дает 489 (Vector API) ускоряет векторные расчеты, решает для вывода ИИ и задач, интенсивных вычислительных.
  • Дает 499 (Структурированная параллелизм) упрощает многопоточное программирование, улучшая обслуживание и надежность.

Инструмент, оптимизация производительности

  • JEP 493 (связывание изображений времени выполнения без JMOD) Включает создание пользовательских изображений времени выполнения без файлов JMOD, уменьшая размер JDK.
  • JEP 450 (Компактные заголовки объектов) Уменьшает размеры заголовка объектов в JVM Hotspot, улучшая размер и производительность кучи.
  • JEP 475 (расширение позднего барьера для G1) Оптимизирует сборщик мусора G1, повышая эффективность и качество кода.
  • JEP 483 (Загрузка и связывание класса за время занятий) Улучшает время запуска приложения.
  • JEP 490 (ZGC: удалить режим не поколения) Упрощает обслуживание ZGC.
  • JEP 491 (синхронизировать виртуальные потоки без закрепления) Улучшает масштабируемость виртуального потока.
  • JEP 404 (Shenandoah поколений) Вводит экспериментальные возможности сбора поколений.
  • JEP 479 (удалите 32-битный x86 порт Windows) и JEP 501 (обременяйте 32-разрядный порт x86 для удаления) Опропит инфраструктуру сборки JDK и тестирование.

Удаление определенных функций для целей безопасности

Сообщество OpenJDK также подчеркнуло удаление того, что оно считает небезопасными функциями, в том числе JEP 472, JEP 486 и JEP 498, чтобы поддерживать целостность Java и соответствовать лучшим практикам. JEPS 472, 486 и 498 являются частью более широких усилий по повышению целостности Java платформы по умолчанию, сосредоточив внимание на ограничении потенциально небезопасных функций и практик.

Вот почему эти JEP считаются небезопасными:

JEP 472: Приготовьтесь ограничить использование JNI: JNI (Native Interface Java) позволяет коду Java взаимодействовать с нативным кодом (C/C ++), который может вводить риски безопасности и проблемы с портативностью. Менеджер безопасности был механизмом ограничения разрешений для удаленного загруженного кода (например, апплетов), но он стал менее актуальным с снижением апплетов.

JEP 486: постоянно отключить менеджера по безопасности: JEP 486 постоянно отключает менеджера безопасности, удаляя функцию, которая вызывала трение и сложность. Этот шаг упрощает платформу и уменьшает потенциал для уязвимостей безопасности, связанных с устаревшими механизмами безопасности.

JEP 498: ПРЕДУПРЕЖДЕНИЕ ПО ИСПОЛЬЗОВАНИЕ МЕТОДОВ ВОССТАВЛЕНИЯ В SUN.MISC.UNSAFE: JEP 498 ПРЕДЛОЖЕНИЯ ПРЕДУПРЕЖДЕНИЯ Когда используются небезопасные методы, и эти методы устарели и будут удалены в будущих выпусках. Это готовит разработчиков к возможному удалению этих небезопасных API и побуждает их использовать более безопасные альтернативы.

Облачная интеграция и поддержка сообщества

Как и следовало ожидать, Oracle утверждает, что Java 24 предлагает улучшенную производительность и экономию затрат при запуске Oracle Cloud Infrastructure (OCI), потому что они были совместными. По словам компании, подписка Oracle Java Universal SE обеспечивает новую поддержку, в том числе в Performance Performance Performance Performance Enterprze Java SE и доступ к GraAlvm.

На мероприятии JavaOne эксперты отрасли взвесили JDK 24. Фрэнк Греко из Crossroads Technologies подчеркнул улучшение API Vector для приложений AI, в то время как Ричард Фихтнер из программного обеспечения XDEV высоко ценил сборщиков потока за эффективные преобразования данных. Доктор Венкат Субраманиам из Agile Developer, Inc. высоко оценил сборщиков потока, ценностями и структурированной параллелизмом. Модератор CODERANCH Жанна Боярский отметила преимущества гибких конструкторов и потенциала сборщиков потока. Marit Van Dijk ‘Jetbrains подчеркнула приверженность своей компании предоставлять дневную поддержку Java 24 в Intellij Idea.

Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Крис Дж. Preimesberger, писатель/редактор, работающий в нескольких публикациях с июня 2021 года, является бывшим редактором Eweek. Он отвечал за освещение публикации в течение десятилетия (2011-2021). За его 16 лет и более 5000 статей в … Подробнее от Криса Дж. Preimesberger

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *