Non proprio…
Infatti sebbene AJAX sia l’acronimo di Asynchronous JavaScript and XML l’uso comune di questo termine è estremamente inflazionato e assume di volta in volta significati diversi.
Innanzitutto analizziamo i 3 concetti che racchiude:
A = Asynchronous
Asincrono, ovvero non bloccante; in sintesi posso effettuare richieste (submit di forms, aprire links, ...) senza che l’interfaccia debba aspettare la risposta del server. Questo migliora estremamente la percezione dei tempi di attesa, facendoli sembrare più brevi; infatti la pagina non rimane bloccata ma è navigabile ed è possibile continuare ad interagirvi.
Tecnicamente ciò avviene grazie alle
API fornite da
XMLHTTP, le cui richieste, di default, non sono bloccanti. Tuttavia è possibile (e preferibile in certe situazioni), effettuare
XMLHttpRequest sincrone, ponendo l’interfaccia in attesa della risposta da parte del server.
J = Javascript
Javascript è un linguaggio supportato dalla quasi totalità dei moderni browser, che permette la manipolazione delle pagine web client-side.
Originariamente si chiamava
Livescript, poi si decise di cambiarne il nome per associarlo a
Java, anche se i due linguaggi non hanno alcuna relazione (a parte una leggera somiglianza per certi costrutti sintattici).
Javascript è utilizzato in combinazione con
XMLHttpRequest per modificare i contenuti di una pagina web senza che la stessa debba essere ricaricata. Questo permette di sviluppare interfacce più elaborate, con controlli sempre più funzionali (autocompletamento, filtri e ordinamento su dati, drag & drop, ...) e simili ad una applicazione non web.
Sebbene
Javascript sia estremamente diffuso non è l’unico; esistono infatti linguaggi come Visual Basic (per IE) e Flash (cross platform) che permettono di effettuare chiamate al server e modificare i contenuti della pagina.
X = XML
XML (Extensible Markup Language) è utilizzato da
XMLHttpRequest per scambiare i dati. Tuttavia non è assolutamente l’unico linguaggio che può essere utilizzato e forse non è nemmeno il più usato. Infatti
XMLHttpRequest può gestire contenuti di tutti i tipi:
HTML, plain text, immagini od altro. Di solito il formato di una risposta
AJAX è di tipo
HTML.
Quindi, essendo pignoli, AJAX, in realtà, racchiude più significati rispetto ai termini di cui è acronimo. A ciò si va a sommare la comune tendenza di associare ad AJAX tutto quello che viene definito Web 2.0 (altro termine dal significato abbastanza controverso). Questo può generare confusione e creare fraintendimenti.
AJAX è la tecnologia, o meglio l’insieme di tecnologie, che permettono ad un’interfaccia web standard di potersi definire Web 2.0.
L’obiettivo comune, che sta dietro a queste tecnologie, è quello di fornire strumenti sempre più potenti e veloci per poter sviluppare pagine web che possano replicare le potenzialità delle applicazioni tradizionali. In questo Google e i suoi prodotti, come GMail, Google Maps, Google Docs and Spreadsheets, possono essere presi come esempi e precursori di tale tendenza.
Fonti: