Java & il World Wide Web: Web 2.0 | Parte 3

Java 3

Qualche mese fa abbiamo iniziato un incredibile viaggio nel mondo di Java attraverso un’avvincente retrospettiva scritta in collaborazione con Danilo Ventura, Senior Software Engineer di Bitrock. Proseguiamo la nostra narrazione descrivendo ciò che è accaduto a metà e alla fine degli anni Duemila e sottolineando gli sviluppi di Java con l’avvento del Web 2.0.


All’inizio del 2005 ci fu una grande rivoluzione che diede il via a quello che poi venne chiamato Web 2.0. Internet si trasformò lentamente da un agglomerato di siti statici, con contenuti pre confezionati e predisposti dai publisher ad un insieme di piattaforme, ossia di strumenti che permettessero agli utenti stessi di pubblicare contenuti. Nacque ad esempio YouTube: gli ideatori mettevano a disposizione lo strumento, ma i contenuti, i video, venivano creati e pubblicati dagli utenti. Nacque MySpace, il primo “social network” che riuscì ad avere 100 milioni di utenti mensili nel 2008.

Ajax e JSON

La tecnologia che diede il maggiore impulso a questa trasformazione fu probabilmente Ajax (Asynchronous JavaScript and XML) che permetteva ai browser di nuova generazione (Firefox e Chrome arrivarono in quegli anni) di effettuare chiamate asincrone. I browser lanciano una richiesta e mentre arriva la risposta può essere lanciata un’altra richiesta.  Tutto ciò rende le pagine web più interattive e più veloci. Le pagine si popolano finché le richieste vengono completate. Cambia anche la struttura stessa delle applicazioni web, perché non è più necessario fornire l’intera pagina ma solo i dati.

Lo sviluppo delle applicazioni web è cambiato e nascono nuovi framework basati su Javascript. Tra il 2005 e il 2010 si afferma la prima libreria JavaScript per applicazioni web distribuita come software gratuito: jQuery. Successivamente sono arrivati framework più potenti per applicazioni web open source, come AngularJs fino ad Angular 2 e React JS.

Di conseguenza, le applicazioni lato server si trasformano in fornitori/ricevitori di dati. Il nuovo formato di scambio di dati tra browser e server diventa JSON, acronimo di JavaScript Object Notation. Il vantaggio di questo formato sta nel fornire i dati sottoforma di oggetti Javascript, che questi framework sono già in grado di manipolare ed usare. E’ un formato standard, aperto, leggero e anche leggibile e comprensibile dagli esseri umani. Il protocollo di comunicazione tra Browser e server rimane quello “primordiale” (HTTP). Diventa quindi, lentamente, uno standard defacto quello di adoperare il protocolle HTTP per scambiarsi dati in formato JSON, dando così un impulso sempre crescente all’utilizzo delle architetture REST per la comunicazione tra applicazioni front end e back end. Da questo periodo in poi, java inizia la sua trasformazione da linguaggio di programmazione web full porpouse a linguaggio di programmazione server side, anche se vengono proposte agli sviluppatori nuove tecnologie e framework java per lo sviluppo full stack (ad esempio java server faces, GWT, Apache Wicket).

Java e i sistemi operativi mobili

Nel 2008 è stato presentato il primo dispositivo commerciale Android: questo è stato un altro momento importante per Java. Android è un sistema operativo che esegue programmi scritti in Java e compilati da una macchina virtuale Dalvik in grado di prendere il codice Java e trasformarlo in bytecode che viene poi eseguito dai sistemi operativi Android. La concorrente Apple ha sviluppato iOS, un sistema operativo proprietario parallelo, mentre Google ha basato tutto su Android e sul linguaggio open source Java. Ancora una volta, Java ha giocato un ruolo importante come linguaggio di programmazione per scrivere applicazioni mobili.

Critiche a Java

Nel 2010, una  delle più grande azienda di software e tecnologia per database Oracle ha acquisito Sun Microsystem e di conseguenza Java è diventato di proprietà di Oracle. Il cambiamento maggiore consisterà nel fornire gratuitamente gli aggiornamenti solo per l’ultima versione LTR, mentre per le più vecchie sarà necessario richiederle a pagamento o affidarsi alle comunità open source

In questo periodo Java viene aspramente criticato dalle comunità di sviluppatori: si manifesta un certo malcontento e verso il linguaggio vengono mosse accuse di eccessiva verbosità, di eccessiva rigidità verso paradigmi non Object Oriented ma soprattutto di scarsa scalabilità in ambienti multi threading Per questo motivo vedono la luce nuovi linguaggi di programmazione di alto livello progettati per interoperare pienamente con la Java Virtual Machine. Possiamo citare Scala, rilasciato nel 2004, e Kotlin nel 2011.

Per un’altra versione rivoluzionaria di Java dovremo aspettare il 2014.

Seguici su LinkedIn e resta sintonizzato per i prossimi interessanti articoli di tecnologia sul nostro blog!

Si ringrazia Danilo Ventura per il prezioso contributo a questa serie di articoli.

Vuoi saperne di più sui nostri servizi? Compila il modulo e fissa un incontro con il nostro team!

Skip to content