Издање Јава СЕ 13

Након шест месеци развоја, Орацле пуштен платформа Јава СЕ 13 (Јава платформа, стандардно издање 13), ОпенЈДК пројекат отвореног кода се користи као референтна имплементација. Јава СЕ 13 одржава компатибилност уназад са претходним издањима Јава платформе; сви претходно написани Јава пројекти ће радити без промена када се покрећу под новом верзијом. Јава СЕ 13 верзије спремне за инсталацију (ЈДК, ЈРЕ и Сервер ЈРЕ) припремљен для Linux (x86_64), Solaris, Windows и macOS. Разработанная в рамках проекта OpenJDK эталонная реализация Јава КСНУМКС је потпуно отвореног кода под ГПЛв2 лиценцом, са ГНУ ЦлассПатх изузецима који дозвољавају динамичко повезивање са комерцијалним производима.

Java SE 13 отнесён к категории выпусков с обычным сроком поддержки, обновления для которого будут выпускаться до следующего релиза. В качестве ветки с длительным сроком поддержки (LTS) следует использовать Java SE 11, обновления для которого будут выпускаться до 2026 года. Прошлая LTS-ветка Java 8 будет поддерживаться до декабря 2020 года. Следующий LTS-релиз намечен на сентябрь 2021 года. Напомним, что начиная с выпуска Java 10 проект перешёл на новый процесс разработки, подразумевающий более короткий цикл формирования новых релизов. Новая функциональность теперь развивается в одной постоянно обновляемой master-ветке, в которую включаются уже готовые изменения и от которой раз в шесть месяцев ответвляются ветки для стабилизации новых выпусков. На март следующего года запланирован выпуск Java 14, предварительные сборки которого уже доступан за тестирање.

Од иновације Јава КСНУМКС може се ознака:

  • Додато поддержка динамического дополнения архивов CDS (Class-Data Sharing), обеспечивающих совместный доступ приложений к общим классам. При помощи CDS общие классы могут размещаться в отдельном совместно используемом архиве, что позволяет ускорить запуск приложений и снизить накладные расходы. В новой версии добавлены средства для динамического архивирования классов после окончания выполнения приложения. Помещённые в архив классы включают все загруженные в процессе работы программы классы и сопутствующие библиотеки, которые отсутствовали в изначально предоставленном базовом CDS-архиве;
  • В сборщик мусора ZGC (Z Garbage Collector) додао је поддержка возвращения неиспользуемой памяти операционной системе;
  • Задействована переработанная реализация API Legacy Socket (java.net.Socket и java.net.ServerSocket), которая проще в сопровождении и отладке. Кроме того, предложенную реализацию проще будет адаптировать для работы с новой системой потоков в пространстве пользователя (fibers), развиваемых в рамках проекта Loom;
  • Настављено развитие новой формы выражений «switch». Добавлена экспериментальная (Preview) возможность использования «switch» в форме не только оператора, но и как выражения. Например, теперь можно использовать конструкции вида:

    int numLetters = switch (day) {
    case MONDAY, FRIDAY, SUNDAY -> 6;
    case TUESDAY -> 7;
    case THURSDAY, SATURDAY -> 8;
    case WEDNESDAY -> 9;
    };

    или

    Систем.оут.принтлн(
    switch (k) {
    case 1 -> «one»
    case 2 -> «two»
    default -> «many»
    }
    );

    В будущем на базе данной возможности је планирано реализовать поддержку сопоставления по шаблонам;

  • Додато экспериментальная поддержка текстовых блоков — новой формы строковых литералов, позволяющих включать в исходный код многострочные текстовые данные без применения в них экранирования символов и сохраняя исходное форматирования текста в блоке. Обрамление блока осуществляется тремя двойными кавычками. Например, вместо выражения

    String query = «SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n» +
    «WHERE `CITY` = ‘INDIANAPOLIS’\n» +
    «ORDER BY `EMP_ID`, `LAST_NAME`;\n»;

    теперь можно применять конструкцию:

    String query = «»»
    SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`
    WHERE `CITY` = ‘INDIANAPOLIS’
    ORDER BY `EMP_ID`, `LAST_NAME`;
    «»»;

  • Закрыто 2126 отчётов об ошибках, из которых 1454 устранены сотрудниками Oracle, а 671 сторонними участниками, из которых шестая часть изменений внесена независимыми разработчиками, а остальное представителями таких компаний, как IBM, Red Hat, Google, Loongson, Huawei, ARM и SAP.

Издање Јава СЕ 13

Извор: опеннет.ру

Додај коментар