Java JDK 10 - обзор новых функций

0
800
Java JDK 10 - обзор новых функций

Java JDK 10 - какие новые функции ожидать в следующем Java?

Технологии из нескольких проектов обеспечат конвейер новых возможностей в Java 10 и более поздних версиях. 12 февраля 2018 года, запланированная версия Java Development Kit 10 получила свой первый выпуск. Второй кандидат на выпуск, должен быть представлен к марту.

Когда JDK 10 будет выпущен

JDK 10, реализация Java Standard Edition 10, должна быть выпущена 20 марта 2018 года. К ключевым усовершенствованиям относятся локальный тип вывода и «чистый» интерфейс для сбора мусора.

Компания Oracle установила шестимесячную каденцию релиза для выпусков Java. Планировалось назвать это обновление и преемников на основе года и месяца выпуска, причем первый выпуск будет называться Java 18.3. Но эти планы были отменены после того, как были подняты возражения.

Где загружать JDK 10

Вы можете загрузить бета-версию JDK 10, согласившись присоединиться к программе раннего усыновления.

Новые и улучшенные функции JDK 10

К основным функциям JDK 10 относятся:

  • Вывод типа локальной переменной для улучшения языка, для расширения вывода типа к локальным переменным. Цель состоит в том, чтобы уменьшить «церемонию», связанную с кодированием, при сохранении приверженности безопасности статического типа;
  • Чистый интерфейс "сборщика мусора" для улучшения изоляции исходных кодов разных "сборщиков мусора". Цели этого усилия включают в себя лучшую модульность для внутреннего кода "сбора мусора" на виртуальной машине HotSpot и упрощение добавления нового "сборщика мусора" в HotSpot;
  • Параллельная "сборка мусора" для "сборщика мусора" G1. Цель состоит в том, чтобы улучшить наихудшие задержки, путем реализации параллелизма;
  • Включение HotSpot для выделения ядра объекта на альтернативном запоминающем устройстве, таком как модуль памяти NVDIMM, заданный пользователем. Эта функция предусматривает, что будущие системы могут иметь гетерогенные архитектуры памяти;
  • Включение компилятора Just-in-time на основе Java Grall, который будет использоваться, экспериментально, на платформе Linux x64;
  • Консолидация репозиториев JDK в единый репозиторий, чтобы оптимизировать развитие. База кода до сих пор была разбита на несколько репозиториев, что может вызвать проблемы с управлением исходным кодом;
  • Совместное использование классов приложений, чтобы уменьшить нагрузку, путем совместного использования метаданных общего класса в разных процессах. Также улучшено время запуска;
  • Thread-local handshakes, для выполнения обратного вызова по потокам без выполнения глобальной точки безопасности VM. Отдельные потоки могут быть остановлены вместо остановки всех потоков или нитей;
  • Предоставление, по умолчанию, набора сертификатов полномочий, корневого центра сертификации в JDK. Цель состоит в использовании корневых сертификатов с открытым исходным кодом в программе Oracle SE Root CA, чтобы сделать открытие JDK более привлекательным для разработчиков.

Плановые этапы разработки JDK 10

Страница загрузки Oracle Java SE, еще не предлагает доступ к JDK 10. Но есть еще дополнительные этапы разработки JDK 10 до окончательной версии. К ним относятся:

  • 11 января 2018 года. Завершение всех запланированных тестов, по крайней мере, одноразовых, на всех поддерживаемых платформах;
  • 18 января 2018 года. 2-й этап Rampdown с исправлениями «showstopper»;
  • 22 февраля 2018 года. Возможен финальный релиз.

Из 21-го, долгожданного выпуска Java Development Kit (JDK) 9, 21 сентября, компания Oracle отображает запланированные обновления для Java, в том числе, для версии Java 18.3, которая должна состояться в марте 2018 года, в рамках нового шестимесячного расписания релизов для стандартной Java.

Долгосрочная дорожная карта Java

Вот то, что по словам Oracle, рассматривается в следующих и последующих версиях Java SE:

  • Проект "Янтарь", который был инкубатором для небольших языковых функций, ориентированных на производительность, которые включают вывод типа «локальная переменная», чтобы уменьшить церемонию, связанную с написанием Java-кода; расширенные перечисления, чтобы улучшить выразительность конструкции enum, разрешив переменные типа в перечислениях и выполнить более четкую проверку типов для констант перечисления и лямбда-остатки, чтобы повысить удобство использования ссылок на лямбда и метод;
  • Проект "Panama", чтобы объединить JVM и собственный код, используя собственный вызов функции из JVM и собственный доступ к данным из JVM;
  • Проект "Valhalla"- это проект инкубатора для продвинутых Java VM и кандидатов на языковые функции, включая типы значений и общую специализацию;
  • Проект "Loom", чтобы уменьшить сложность написания параллельных приложений. План предусматривает добавление альтернативных реализаций потоков пользовательского режима, разграниченных продолжений и других конструкций, связанных с манипуляцией стек-вызовов. Основная цель этого предложения предложить альтернативную реализацию потоков, управляемых планировщиками, написанными на Java. Модель Java-программирования обычных потоков Java будет сохранена при улучшении производительности и уменьшении объема.

С новым шестимесячным графиком выпуска, функции, которые пропускают один выпуск, могут быть отложены всего на шесть месяцев, когда выйдет следующий выпуск. Помимо того, что было объявлено для JDK 10, Oracle не уточнила, когда какая-либо из новых предлагаемых функций будет фактически доступна на Java.

Источник: https://www.itworld.com/article/3230507/java/java-jdk-10-what-new-features-to-expect-in-the-next-java.html