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 GPLv2 лицензиясы боюнча толук ачык булак болуп саналат, GNU ClassPath бөтөнчөлөрү коммерциялык өнүмдөр менен динамикалык байланышты камсыз кылат.

Java SE 13 жалпы колдоо чыгаруу катары классификацияланат жана кийинки релизге чейин жаңыртууларды алууну улантат. Узак мөөнөттүү колдоо (LTS) бутагы Java SE 11 болушу керек, ал жаңыртууларды 2026-жылга чейин ала берет. Java 8дин мурунку LTS бутагы 2020-жылдын декабрына чейин колдоого алынат. Кийинки LTS релизи 2021-жылдын сентябрына пландаштырылган. Эске сала кетсек, Java 10 чыгарылгандан баштап, долбоор жаңы релиздерди түзүү үчүн кыскараак циклди билдирген жаңы иштеп чыгуу процессине өткөн. Жаңы функциялар азыр дайыма жаңыланып туруучу бир башкы бутакта иштелип чыккан, ал даяр өзгөртүүлөрдү камтыйт жана жаңы релиздерди турукташтыруу үчүн ар бир жарым жылда бир бутактан турат. Java 14 келерки жылдын март айында чыгарылышы пландаштырылууда, алдын ала көрүү түзүлүшү мурунтан эле жеткиликтүү сыноо үчүн.

чейин инновациялар Java 13 алат белги:

  • Кошулган CDS (Class-Data Sharing) архивдерин динамикалык кошууну колдоо, жалпы класстарга жалпы колдонмо жеткиликтүүлүгүн камсыз кылуу. CDS менен жалпы класстарды өзүнчө, жалпы архивге жайгаштырса болот, бул тиркемелерди тезирээк ишке киргизүүгө жана кошумча чыгымдарды азайтууга мүмкүндүк берет. Жаңы версия колдонмонун аткарылышы аяктагандан кийин класстарды динамикалык архивдөө үчүн куралдарды кошот. Архивделген класстарга программанын иштөө учурунда жүктөлгөн, CDSтин баштапкы базалык архивинде болбогон бардык класстар жана коштомо китепканалар кирет;
  • ZGCге (Z таштанды жыйноочу) кошулду колдонулбаган эстутумду операциялык системага кайтарууну колдоо;
  • тартылган тейлөө жана мүчүлүштүктөрдү оңдоо оңой болгон Legacy Socket API (java.net.Socket жана java.net.ServerSocket) кайра иштелип чыккан ишке ашыруу. Мындан тышкары, сунушталган ишке ашыруу Loom долбоорунун алкагында иштелип чыккан колдонуучу мейкиндигинде жиптердин жаңы системасы (була) менен иштөөгө ыңгайлашууга оңой болот;
  • уланды "которуу" сөз айкаштарынын жаңы формасын иштеп чыгуу. Эксперименттик (Алдын ала көрүү) "которуштурууну" оператордун гана эмес, ошондой эле туюнтма катары колдонуу мүмкүнчүлүгү кошулду. Мисалы, сиз азыр төмөнкүдөй конструкцияларды колдоно аласыз:

    int numLetters = которуу (күн) {
    иш ДҮЙШӨМБҮ, ЖУМА, ЖЕКШЕМБИ -> 6;
    case ШЕЙШЕМБИ -> 7;
    case БЕЙШЕМБИ, ИШЕМБИ -> 8;
    case ШАРШЕМБИ -> 9;
    };

    же

    System.out.println(
    которуштуруу (k) {
    case 1 -> "бир"
    case 2 -> "эки"
    демейки -> "көп"
    }
    );

    Келечекте ушул өзгөчөлүккө таянып пландаштырылган үлгү дал келүү колдоону ишке ашыруу;

  • Кошулган текст блоктору үчүн эксперименталдык колдоо – сап литералдарынын жаңы формасы, бул блоктогу тексттин түпнуска форматын сактабастан жана символдорду колдонбостон, баштапкы кодуңузга көп саптуу тексттик маалыматтарды киргизүүгө мүмкүндүк берет. Блок үч кош тырмакча менен рамкаланган. Мисалы, сөздүн ордуна

    Сап сурамы = "EMPLOYEE_TB`ДЕН `EMP_ID`, `LAST_NAME` ТАНДОО\n" +
    "КАЙДА `CITY` = 'ИНДИАНАПОЛИС'\n" +
    "'EMP_ID', 'LAST_NAME' БОЮНЧА БУЙРУК БЕРҮҮ;\n";

    Эми сиз курулушту колдоно аласыз:

    Сап суроо = """
    `EMPLOYEE_TB` ДЕНЕН `EMP_ID`, `LAST_NAME` ТАНДОО
    КАЙДА `CITY` = 'ИНДИАНАПОЛИС'
    'EMP_ID', 'LAST_NAME' БОЮНЧА БУЙРУК БЕРҮҮ;
    """;

  • 2126 мүчүлүштүк отчет жабылган, анын 1454ү Oracle кызматкерлери тарабынан, 671и үчүнчү тараптар тарабынан чечилген, анын ичинен өзгөртүүлөрдүн алтыдан бир бөлүгү көз карандысыз иштеп чыгуучулар тарабынан, калганы IBM, Red Hat, Google сыяктуу компаниялардын өкүлдөрү тарабынан жасалган. , Loongson, Huawei, ARM жана SAP.

Java SE 13 чыгаруу

Source: opennet.ru

Комментарий кошуу