Che cos'è AJAX?
AJAX è un termine usato per descrivere un approccio alla progettazione e all'implementazione di applicazioni Web. È l'acronimo di A sincrono J avaScript e X ML. Il termine è stato introdotto per la prima volta in un articolo di Jesse James Garrett di Adaptive Path, una società di web design con sede a San Francisco. Ha concepito il termine quando si è reso conto della necessità di un modo semplice e vendibile per presentare un certo stile di design e costruzione ai clienti.
Lo scopo principale di AJAX è aiutare a far funzionare le applicazioni Web più come le applicazioni desktop. HyperText Markup Language (HTML), il linguaggio che guida il World Wide Web, è stato progettato attorno all'idea dell'ipertesto : pagine di testo che potrebbero essere collegate al loro interno ad altri documenti. Affinché HTML funzioni, la maggior parte delle azioni eseguite da un utente finale nel proprio browser inviano una richiesta al server Web. Il server quindi elabora tale richiesta, forse invia ulteriori richieste e alla fine risponde con qualunque richiesta dell'utente.
Mentre questo approccio potrebbe aver funzionato bene nei primi giorni di Internet, per le moderne applicazioni Web, l'attesa costante tra i clic è frustrante per gli utenti e serve a smorzare l'intera esperienza. Gli utenti si sono abituati a risposte incredibilmente veloci nelle loro applicazioni desktop e non sono contenti quando un sito Web non può offrire la stessa risposta immediata. Aggiungendo un ulteriore livello tra l'interfaccia utente e la comunicazione con il server, le applicazioni AJAX rimuovono gran parte del ritardo tra l'interazione dell'utente e la risposta dell'applicazione. Man mano che AJAX diventa più comune nelle applicazioni Web più diffuse, gli utenti diventano sempre più abituati a questa risposta immediata, contribuendo a spingere più aziende ad adottare le metodologie AJAX.
Un'applicazione AJAX è costituita da una serie di applicazioni utilizzate insieme per creare un'esperienza più fluida. Questo include Extensible HTML (XHTML) e Cascading Style Sheets (CSS) per costruire rispettivamente la struttura di pagina sottostante e il suo stile visivo; una sorta di suite di interazione che utilizza il Document Object Model; manipolazione dei dati utilizzando Extensible Markup Language (XML); recupero dei dati tramite XMLHttpRequest; e JavaScript per aiutare questi diversi elementi a interagire tra loro. AJAX si sta diffondendo rapidamente in tutto il Web, con esempi visibili in molti siti importanti. Google Maps, ad esempio, in molti modi incarna l'etica del modello AJAX, con la sua funzionalità complessa e l'interattività praticamente senza soluzione di continuità.
Come la maggior parte delle filosofie emergenti dello sviluppo web, AJAX ha la sua parte di detrattori. Un argomento comunemente livellato contro AJAX è che in molti casi interrompe alcune funzionalità previste, come l'uso del pulsante Indietro , causando confusione. Sebbene esistano alcune correzioni per molte di queste interruzioni, raramente vengono implementate nella misura in cui il comportamento di un'applicazione AJAX è conforme al comportamento previsto del browser più grande.