Izdaja Java SE 13

Po šestih mesecih razvoja je Oracle izpuščen platforma JavaSE 13 (Java Platform, Standard Edition 13), je kot referenčna izvedba uporabljen odprtokodni projekt OpenJDK. Java SE 13 ohranja povratno združljivost s prejšnjimi izdajami platforme Java; vsi predhodno napisani projekti Java bodo ob zagonu pod novo različico delovali brez sprememb. Graditve Java SE 13, pripravljene za namestitev (JDK, JRE in strežnik JRE) pripravljeni za Linux (x86_64), Solaris, Windows in macOS. Referenčna implementacija, ki jo je razvil projekt OpenJDK Java 13 je popolnoma odprtokoden pod licenco GPLv2, z izjemami GNU ClassPath, ki omogočajo dinamično povezovanje s komercialnimi izdelki.

Java SE 13 je razvrščena kot izdaja splošne podpore in bo prejemala posodobitve do naslednje izdaje. Podružnica dolgoročne podpore (LTS) bi morala biti Java SE 11, ki bo prejemala posodobitve do leta 2026. Prejšnja veja LTS Jave 8 bo podprta do decembra 2020. Naslednja izdaja LTS je predvidena za september 2021. Naj vas spomnimo, da je projekt z izdajo Jave 10 prešel na nov razvojni proces, kar pomeni krajši cikel za oblikovanje novih izdaj. Nova funkcionalnost je zdaj razvita v eni stalno posodobljeni glavni veji, ki vključuje že pripravljene spremembe in iz katere se veje razvejajo vsakih šest mesecev za stabilizacijo novih izdaj. Java 14 naj bi izšla marca prihodnje leto, s predoglednimi različicami na voljo za testiranje.

Od inovacije Java 13 eno lahko znamka:

  • Dodano podpora za dinamično dodajanje arhivov CDS (Class-Data Sharing), ki zagotavlja skupen dostop aplikacij do skupnih razredov. S CDS lahko skupne razrede postavite v ločen arhiv v skupni rabi, kar omogoča hitrejši zagon aplikacij in zmanjšanje stroškov. Nova različica dodaja orodja za dinamično arhiviranje razredov po koncu izvajanja aplikacije. Arhivirani razredi vključujejo vse med delovanjem programa naložene razrede in spremljajoče knjižnice, ki niso bile v prvotno zagotovljenem osnovnem CDS arhivu;
  • V ZGC (Z Garbage Collector) dodano podpora za vrnitev neuporabljenega pomnilnika v operacijski sistem;
  • Vpleteni preoblikovana izvedba API-ja Legacy Socket (java.net.Socket in java.net.ServerSocket), ki jo je lažje vzdrževati in odpravljati napake. Poleg tega bo predlagano izvedbo lažje prilagoditi delu z novim sistemom niti v uporabniškem prostoru (vlakna), razvitim v okviru projekta Loom;
  • Nadaljevano razvoj nove oblike izražanja "switch". Dodana poskusna (predogled) možnost uporabe »stikala« v obliki ne samo operatorja, ampak tudi kot izraza. Na primer, zdaj lahko uporabite konstrukte, kot so:

    int numLetters = preklop (dan) {
    primer PONEDELJEK, PETEK, NEDELJA -> 6;
    primer TOREK -> 7;
    primeru ČETRTEK, SOBOTA -> 8;
    primer SREDA -> 9;
    };

    ali

    System.out.println(
    stikalo (k) {
    primer 1 -> "ena"
    primer 2 -> "dva"
    privzeto -> "mnogo"
    }
    );

    V prihodnosti na podlagi te funkcije je načrtovana implementirati podporo za ujemanje vzorcev;

  • Dodano eksperimentalna podpora za besedilne bloke – nova oblika nizovnih literalov, ki vam omogočajo, da v izvorno kodo vključite večvrstične besedilne podatke brez uporabe ubežnih znakov in ohranite izvirno oblikovanje besedila v bloku. Blok je uokvirjen s tremi dvojnimi narekovaji. Na primer, namesto izraza

    Poizvedba niza = "SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n" +
    "WHERE `CITY` = 'INDIANAPOLIS'\n" +
    "ORDER BY `EMP_ID`, `LAST_NAME`;\n";

    Zdaj lahko uporabite konstrukcijo:

    Niz poizvedbe = """
    IZBERI `EMP_ID`, `LAST_NAME` IZ `EMPLOYEE_TB`
    WHERE `CITY` = 'INDIANAPOLIS'
    ORDER BY `EMP_ID`, `LAST_NAME`;
    """;

  • Zaprtih je 2126 poročil o hroščih, od tega so jih 1454 odpravili zaposleni v Oraclu, 671 pa tretje osebe, od tega so šestino sprememb naredili neodvisni razvijalci, ostalo pa predstavniki podjetij, kot so IBM, Red Hat, Google , Loongson, Huawei, ARM in SAP.

Izdaja Java SE 13

Vir: opennet.ru

Dodaj komentar