Ang pagpagawas sa Java SE 13

Pagkahuman sa unom ka bulan nga pag-uswag, ang Oracle gipagawas plataporma JavaSE 13 (Java Platform, Standard Edition 13), ang open-source nga OpenJDK nga proyekto gigamit isip reference nga pagpatuman. Ang Java SE 13 nagmintinar sa atrasado nga pagkaangay sa nangaging mga pagpagawas sa plataporma sa Java; ang tanan nga gisulat kaniadto nga mga proyekto sa Java molihok nga walay mga pagbag-o kung gipadagan ubos sa bag-ong bersyon. Andam nga i-install ang Java SE 13 nga pagtukod (JDK, JRE ug Server JRE) giandam para sa Linux (x86_64), Solaris, Windows ug macOS. Ang pagpatuman sa pakisayran nga gihimo sa proyekto sa OpenJDK Java 13 bug-os nga bukas nga tinubdan ubos sa lisensya sa GPLv2, nga adunay mga eksepsiyon sa GNU ClassPath nga nagtugot sa dinamikong pagsumpay sa mga komersyal nga produkto.

Ang Java SE 13 giklasipikar ingon usa ka kinatibuk-ang pagpagawas sa suporta ug magpadayon nga makadawat mga update hangtod sa sunod nga pagpagawas. Ang sanga sa Long Term Support (LTS) kinahanglan nga Java SE 11, nga magpadayon nga makadawat mga update hangtod sa 2026. Ang miaging LTS nga sanga sa Java 8 suportahan hangtod sa Disyembre 2020. Ang sunod nga pagpagawas sa LTS gikatakda sa Septyembre 2021. Pahinumdum kami kanimo nga sugod sa pagpagawas sa Java 10, ang proyekto gibalhin sa usa ka bag-ong proseso sa pag-uswag, nga nagpasabut nga usa ka mas mubo nga siklo alang sa pagporma sa mga bag-ong pagpagawas. Ang bag-ong kagamitan naugmad na karon sa usa ka kanunay nga gi-update nga master branch, nga naglakip sa andam na nga mga pagbag-o ug gikan diin ang mga sanga gisanga matag unom ka bulan aron mapalig-on ang mga bag-ong pagpagawas. Ang Java 14 gikatakda nga ipagawas sa Marso sa sunod tuig, nga adunay mga preview nga gitukod na magamit alang sa pagsulay.

Gikan mga inobasyon Java 13 mahimo Mark:

  • Gidugang suporta alang sa dinamikong pagdugang sa CDS (Class-Data Sharing) nga mga archive, nga naghatag og gipaambit nga access sa aplikasyon ngadto sa komon nga mga klase. Uban sa CDS, ang sagad nga mga klase mahimong ibutang sa usa ka bulag, gipaambit nga archive, nga gitugotan ang mga aplikasyon nga maglansad nga mas paspas ug makunhuran ang overhead. Ang bag-ong bersyon nagdugang mga himan alang sa dinamikong pag-archive sa mga klase pagkahuman sa pagtapos sa pagpatuman sa aplikasyon. Ang gi-archive nga mga klase naglakip sa tanan nga mga klase ug nag-uban nga mga librarya nga gikarga sa panahon sa operasyon sa programa nga wala sa una nga gihatag nga base nga archive sa CDS;
  • Ngadto sa ZGC (Z Garbage Collector) gidugang suporta alang sa pagbalik sa wala magamit nga memorya sa operating system;
  • Naapil usa ka gidesinyo pag-usab nga pagpatuman sa Legacy Socket API (java.net.Socket ug java.net.ServerSocket) nga mas sayon ​​sa pagmentinar ug pag-debug. Dugang pa, ang gisugyot nga pagpatuman mahimong mas sayon ​​nga ipahiangay sa pagtrabaho uban sa bag-ong sistema sa mga hilo sa user nga luna (mga lanot), naugmad isip kabahin sa proyekto sa Loom;
  • Gipadayon pagpalambo sa usa ka bag-ong porma sa mga ekspresyon "switch". Gidugang ang abilidad sa eksperimento (Preview) sa paggamit sa "switch" sa porma dili lamang sa usa ka operator, apan ingon usab usa ka ekspresyon. Pananglitan, mahimo nimong gamiton ang mga konstruksyon sama sa:

    int numLetters = switch (adlaw) {
    kaso LUNES, BIYERNES, DOMINGO -> 6;
    kaso MARTES -> 7;
    kaso HUWEBES, SABADO -> 8;
    kaso WEDNESDAY -> 9;
    };

    o

    System.out.println(
    switch (k) {
    kaso 1 -> "usa"
    kaso 2 -> "duha"
    default -> "daghan"
    }
    );

    Sa umaabot, base sa kini nga bahin ang giplano ipatuman ang suporta sa pagpares sa sumbanan;

  • Gidugang eksperimento nga suporta alang sa mga bloke sa teksto - usa ka bag-ong porma sa mga literal nga string nga nagtugot kanimo sa paglakip sa daghang linya nga datos sa teksto sa imong source code nga dili mogamit sa karakter nga makaikyas ug magpreserbar sa orihinal nga pag-format sa teksto sa bloke. Ang block gi-frame sa tulo ka doble nga mga kinutlo. Pananglitan, imbes sa ekspresyon

    String query = "PILI `EMP_ID`, `LAST_NAME` GIKAN `EMPLOYEE_TB`\n" +
    "DIIN `Syudad` = 'INDIANAPOLIS'\n" +
    "ORDER NI `EMP_ID`, `LAST_NAME`;\n";

    Karon mahimo nimong gamiton ang pagtukod:

    Pangutana sa string = """
    PILI `EMP_ID`, `LAST_NAME` GIKAN sa `EMPLOYEE_TB`
    DIIN `Syudad` = 'INDIANAPOLIS'
    ORDER NI `EMP_ID`, `LAST_NAME`;
    """;

  • 2126 ka mga bug report ang gisirado, diin 1454 ang nasulbad sa mga empleyado sa Oracle, ug 671 sa mga ikatulo nga partido, diin ang ikaunom sa mga pagbag-o gihimo sa mga independente nga developer, ug ang uban sa mga representante sa mga kompanya sama sa IBM, Red Hat, Google , Loongson, Huawei, ARM ug SAP.

Ang pagpagawas sa Java SE 13

Source: opennet.ru

Idugang sa usa ka comment