• Programmazione Android
  • CORSI ONLINE
  • Web Agency

Logo

Corsi di programmazione web e mobile online
Navigation
  • Home
  • CORSI ONLINE
  • Tutorial Pratici
  • GUIDE COMPLETE
    • Corso completo di C
    • Corso videogame con Cocos2d
    • Programmazione Cocoa Touch
  • Sezioni
    • Libri e manuali
    • Tips & Tricks
    • Risorse utili
    • Strumenti di Sviluppo
    • Materiale OpenSource
    • Framework
    • Guide Teoriche
    • Guide varie
    • Grafica e Design
    • iPad
    • News
    • Video Tutorial
    • Windows Phone
  • Pubblicità
  • About
    • Chi siamo
    • Pubblicazioni
    • Collabora
    • Sostieni devAPP

Java9: le novità

By Giuseppe Maggi | on 23 Ottobre 2017 | 0 Comment
News
Java

Lo scorso 21 settembre è stato pubblicato Java 9, a tre anni di distanza dalla rivoluzionaria versione 8. Anche in questa edizione sono state molte le novità, alcune di rilevanza maggiore, altre consistenti per lo più in semplici modifiche al linguaggio: ne vediamo qui le principali, soprattutto quelle che influiscono maggiormente nella vita dello sviluppatore.

Tra le novità più importanti, si annovera senz’altro il sistema modulare. Sinora la maggiore struttura per raccogliere classi era il package utile sia per pianificare internamente i nostri progetti sia per suddividere la piattaforma Java in sezioni dedicate ognuna ad uno scopo (java.io per l’input/output, java.util per strutture dati e altro, etc.). I moduli nascono come una struttura di livello superiore ai package per fornire una nuova organizzazione interna ad applicazioni complesse ed una suddivisione più articolata del JDK stesso. Con i moduli si potrà specificare in ogni pubblicazione dell’applicazione quali componenti devono esser incluse per un build mirato: sia nella realizzazione di applicazioni web sia per la programmazione embedded di dispositivi con risorse limitate.

Un’altra novità molto interessante è la disponibilità ora di un ambiente REPL (Read-Eval-Print-Loop), una console interattiva in cui si può direttamente inserire un comando Java e farlo eseguire. Risponde al comando jshell già disponibile nella cartella bin del JDK ed è una caratteristica richiesta da anni dagli sviluppatori. Tra l’altro, è stato fatto notare, non di rado, che l’assenza di una console virtuale potesse limitare l’adozione di Java in contesti formativi e scolastici che sarebbero stati molto avvantaggiati da un ambiente per la prova immediata delle nozioni acquisite con il conseguente avvicinamento a tecnologie in cui una REPL è sempre esistita, pensiamo a Python.

Sul fronte delle tecnologie di Rete e comunicazione, si registrano diverse novità come:

  • avvicinamento ai maggiori standard della rete con l’aggiornamento dei client HTTP per ospitare integrazioni con protocollo HTTP/2 e WebSocket e avanzamento del tool Javadoc che ora produce documentazione in markup HTML5;
  • introduzione delle API per il protocollo DTLS (Data Transport Layer Security) nato per scambiare in sicurezza messaggi proteggendoli da contraffazioni ed intercettazioni;
  • supporto per la codifica dei caratteri Unicode 8.0;
  • classificazione deprecated per le Applet API, già cadute in disuso da molti anni.

Ancora miglioramenti sono stati apportati alle capacità di integrazione di Javascript in applicazioni Java. Il progetto Nashorn che si occupa di tale materia è già stato un’interessante integrazione di Java8 e nella versione 9 del linguaggio si è registrata l’apparizione di nuove parser API per permettere ad IDE ed ambienti esterni di analizzare ed interpretare codice ECMAScript (per interderci, la versione moderna del Javascript) nonché il supporto ad alcune caratteristiche di ECMAScript6 come il ciclo for…of, le parole chiave let o const, le strutture dati Map e Set ed altro ancora.

Inoltre, con Java9 si è avuta una serie di novità nel linguaggio, in settori diversi ma comunque finalizzati a raggiungere una maggiore sinteticità del codice, missione già intrapresa con Java8. Eccone alcune:

  • le interfacce (costrutto già ampiamente modernizzato da Java8) ora possono ospitare metodi statici private;
  • l’operatore diamond (le parentesi acute vuote <> tipiche dei Generics) può essere usato contestualmente alla creazione di un oggetto anonimo;
  • il costrutto try-with-resources può gestire oggetti creati in precedenza senza doverne creare uno nuovo;
  • le interfacce Set, List e Map, dedicate alla gestione di strutture dati, acquisiscono il nuovo metodo factory of che permette di creare in maniera agevole degli oggetti immutabili;
  • metodo stream() per lavorare con gli Streams sugli elementi Optional.

Insomma, in Java9 di cose interessanti ce ne sono molte. Questa era una rapida carrellata ma non mancheremo di fornire maggiori informazioni con tutorial specifici.

Alla prossima!

 

Share this story:
  • tweet

Tags: javajava virtual machinejava9jdk

Recent Posts

  • Parte il percorso programmatori iOS in Swift su devACADEMY.it

    20 Dicembre 2017 - 0 Comment
  • Android, crittografare dati velocemente con Encryption

    24 Settembre 2018 - 0 Comment
  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment

Related Posts

  • Sql2o, accesso immediato ai database tramite Java

    3 Settembre 2018 - 0 Comment
  • Okio, libreria per ottimizzare l’input/output in Java

    27 Agosto 2018 - 0 Comment
  • Stringhe in Kotlin

    23 Agosto 2018 - 0 Comment

Author Description

No Responses to “Java9: le novità”

Leave a Reply

Your email address will not be published. Required fields are marked *


*
*

Corso online di programmazione android e java

SEZIONI

  • Android
  • Comunicazioni
  • Contest
  • Corsi ed Eventi
  • Corso completo di C
  • Corso programmazione videogiochi
  • Framework
  • Grafica e Design
  • Guida rapida alla programmazione Cocoa Touch
  • Guide Teoriche
  • Guide varie
  • iPad
  • Le nostre applicazioni
  • Libri e manuali
  • Materiale OpenSource
  • News
  • Pillole di C++
  • Progetti completi
  • Risorse utili
  • Strumenti di Sviluppo
  • Swift
  • Tips & Tricks
  • Tutorial Pratici
  • Video Tutorial
  • Windows Phone

Siti Amici

  • Adrirobot
  • Allmobileworld
  • Apple Notizie
  • Apple Tribù
  • Avvocato360
  • Blog informatico 360°
  • bubi devs
  • fotogriPhone
  • GiovaTech
  • iApp-Mac
  • iOS Developer Program
  • iPodMania
  • MelaRumors
  • Meritocracy
  • SoloTablet
  • TecnoUser
  • Privacy & Cookie Policy
©2009-2018 devAPP - All Rights Reserved | Contattaci
devAPP.it è un progetto di DEVAPP S.R.L. - Web & Mobile Agency di Torino
Str. Volpiano, 54 - 10040 Leini (TO) - C.F. e P.IVA 11263180017 - REA TO1199665 - Cap. Soc. € 10.000,00 i.v.

devACADEMY.it

Vuoi imparare a programmare?

Iscriviti e accedi a TUTTI i corsi con un’unica iscrizione.
Oltre 70 corsi e migliaia di videolezioni online e in italiano a tua disposizione.

ISCRIVITI SUBITO