Rilascio di Java SE 13

Dopo sei mesi di sviluppo, Oracle ha rilasciato la piattaforma Java SE 13 (Java Platform, Standard Edition 13), la cui implementazione di riferimento si basa sul progetto open source OpenJDK. In Java SE 13 è mantenuta la compatibilità con le versioni precedenti della piattaforma Java, tutti i progetti Java già scritti funzioneranno senza modifiche con la nuova versione. Le distribuzioni pronte per l'installazione di Java SE 13 (JDK, JRE e Server JRE) preparati sono disponibili per Linux (x86_64), Solaris, Windows e macOS. L'implementazione di riferimento sviluppata sotto il progetto OpenJDK Java 13 è completamente open source sotto la licenza GPLv2 con eccezioni GNU ClassPath, che consentono il collegamento dinamico con prodotti commerciali.

Java SE 13 è classificato come una versione con supporto standard, con aggiornamenti previsti fino al prossimo rilascio. Per una versione a lungo termine (LTS), si consiglia di utilizzare Java SE 11, i cui aggiornamenti saranno rilasciati fino al 2026. La precedente versione LTS, Java 8, sarà supportata fino a dicembre 2020. Il prossimo rilascio LTS è previsto per settembre 2021. Ricordiamo che a partire dal rilascio di Java 10, il progetto è passato a un nuovo processo di sviluppo, che prevede cicli di rilascio più brevi. Le nuove funzionalità ora vengono sviluppate in un ramo master costantemente aggiornato, dove vengono incluse modifiche già pronte e da cui si diramano rami per stabilizzare i nuovi rilasci ogni sei mesi. Il rilascio di Java 14 è programmato per marzo dell'anno prossimo, di cui già sono disponibili compilazioni preliminari. sono disponibili per i test.

Da novità Java 13 è possibile selezionare:

  • Aggiunto supporto per il caricamento dinamico degli archivi CDS (Class-Data Sharing), che consente l'accesso condiviso delle applicazioni a classi comuni. Con CDS, le classi condivise possono essere collocate in un unico archivio condiviso, consentendo di velocizzare l'avvio delle applicazioni e ridurre i costi. Nella nuova versione sono stati aggiunti strumenti per l'archiviazione dinamica delle classi al termine dell'esecuzione dell'applicazione. Le classi inserite nell'archivio includono tutte le classi caricate durante l'esecuzione del programma e le librerie associate che mancavano nell'archivio CDS di base fornito inizialmente;
  • Raccoglitore di spazzatura ZGC (Z Garbage Collector) aggiunta supporto per il reintegro della memoria non utilizzata nel sistema operativo;
  • Attivato implementazione rielaborata dell'API Legacy Socket (java.net.Socket e java.net.ServerSocket), che è più semplice da mantenere e debuggare. Inoltre, l'implementazione proposta sarà più facile da adattare per lavorare con il nuovo sistema di thread nello spazio utente (fibers), sviluppato nell'ambito del progetto Loom;
  • Continuato sviluppo di una nuova forma di espressioni "switch". È stata aggiunta un'opzione sperimentale (Preview) per utilizzare "switch" non solo come operatore, ma anche come espressione. Ad esempio, ora è possibile utilizzare costruzioni del tipo:

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

    o

    System.out.println(
    switch (k) {
    case 1 -> "one"
    case 2 -> "two"
    default -> "many"
    }
    );

    In futuro, sulla base di questa possibilità è previsto realizzare il supporto per la corrispondenza tramite modelli;

  • Aggiunto supporto sperimentale per blocchi di testo — una nuova forma di letterali stringa che consente di includere dati testuali su più righe nel codice sorgente senza doverli eseguire l'escaping dei caratteri e mantenendo la formattazione originale del testo nel blocco. Il blocco è racchiuso da tre virgolette doppie. Ad esempio, invece dell'espressione

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

    ora è possibile utilizzare la seguente costruzione:

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

  • Chiusi 2126 rapporti di errore, di cui 1454 risolti dai dipendenti Oracle e 671 da partecipanti esterni, di cui un sesto delle modifiche è stato apportato da sviluppatori indipendenti e il resto da rappresentanti di aziende come IBM, Red Hat, Google, Loongson, Huawei, ARM e SAP.

Rilascio di Java SE 13

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster