Java SE 13 шығарылымы

Алты айлық дамудан кейін Oracle босатылды платформа JavaSE 13 (Java Platform, Standard Edition 13), ашық бастапқы OpenJDK жобасы анықтамалық іске асыру ретінде пайдаланылады. Java SE 13 Java платформасының алдыңғы шығарылымдарымен кері үйлесімділікті сақтайды; бұрын жазылған барлық Java жобалары жаңа нұсқада іске қосылған кезде өзгеріссіз жұмыс істейді. Орнатуға дайын Java SE 13 құрастырулары (JDK, JRE және Server JRE) дайындалды для Linux (x86_64), Solaris, Windows и macOS. Разработанная в рамках проекта OpenJDK эталонная реализация Java 13 коммерциялық өнімдермен динамикалық байланыстыруға мүмкіндік беретін GNU ClassPath ерекшеліктері бар GPLv2 лицензиясы бойынша толығымен ашық бастапқы көзі болып табылады.

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

Қайдан инновациялар Java 13 болады белгі:

  • Қосылды поддержка динамического дополнения архивов 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;
    };

    немесе

    System.out.println(
    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.

Java SE 13 шығарылымы

Ақпарат көзі: opennet.ru

пікір қалдыру