MasterNewMedia Italia
Scopri i migliori tool per comunicare,
collaborare e fare marketing
   
Curated by: Luigi Canali De Rossi
 


1 novembre 2005

Cosa E' Ajax E Per Che Cosa E' Buono

Ajax non è una tecnologia di per sè, ma è un termine che si riferisce all'uso di un gruppo di tecnologie insieme.

Le applicazioni web tradizionali presentano form completati da un utente e inviati ad un web server che risponde inviando una nuova pagina indietro. Dal momento che il server risponde inviando una pagina alla volta, le pagine vanno più lente dei loro complementi nativi.

pencil_by_eyebiz.jpg
Photo credit: Jesper Noer

Le applicazioni Ajax, invece, possono richiedere al web server di mandare indietro solamente i dati di cui hanno bisogno, usando SOAP o altri tipi si servizi web XML-based.

Le risposte del web server sono processate sul client JavaScript .

Il risultato è un'interfaccia più sensibile, dal momento che l'ammontare dei dati scambiati tra il browser e il server è notevolmente ridotto. Molto lavoro del Web server viene fatto dal client.
(Source: Wikipedia)

Ecco qui un'eccellente introduzione di Eddie Traversa al suo Ajax Tutorial, What Is It Good For?, che non solo fornisce una eccellente introduzione ma analizza a fondo tecniche di codice specifiche ed esempi.

 

Secondo il mio modo di pensare, Ajax è più un naturale progresso da un set di tecniche esistenti che qualcosa di assolutamente nuovo.

Queste sono le aree chiave di questo progresso:


  • Ajax fornisce un modo per mixare e far incontrare xml con xhtml.
  • Ajax riduce significativamente il lavoro del server.
  • Ajax supera i colli di bottiglia relativi alla velocità che il Web development tradizionale non era riuscito a superare. Un sito Ajax-based sarà caricato più velocemente di un sito tradizionale.
  • Quando è fatto bene, Ajax riduce significativamente il tempo di caricamento..

Prima di procedere si dovrebbe notare che Ajax non è una panacea. Ha alcuni problemi che ha bisogno di superare per continuare a maturare. Ma è un campo promettente e influenzerà fortemente il modo in cui noi pensiamo alla costruzione di pagine Web e alle applicazioni Web.

Inoltre c'è bisogno di chiarire che Ajax non è una tecnologia ma è una tecnica che combina tecniche e tecnologie. Per esempio, XML, DHTML, CSS, XHTML.

Infatti, Ajax è DHTML con xmlhttprequest object.
E' affascinante pensare come un oggetto può cambiare l'intero campo di gioco.

In Ajax, secondo come stanno andando le cose, abbiamo due estremi.

Da una parte abbiamo gli sviluppatori che costruiscono tutta una serie di tag Javascript complicati che nella maggior parte dei casi non sono necessari.

Dall'altra parte abbiamo molti semplici esempi sul Web che mostrano come caricare XML in un documento o processare un form con Ajax.

Mentre entrambi le vie giocano un ruolo nel progresso del Web, non sono convinto che Ajax venga usato al meglio.

Ajax stesso è una tecnica, ma per usare tale tecnica efficacemente dobbiamo divenire familiari con la filosofia dietro a questa tecnica.

In altre parole non è determinante l'uso della tecnica, quanto la mentalità e l'approccio che sono dietro.

Per ora ho menzionato molte volte il termine Ajax, ma non ho ancora descritto l'elemento fondamentale.

Il cuore di Ajax è l' xmlhttprequest object e il suo equivalente Microsoft ActiveX.

E' l'oggetto che permette ai dati di essere trasferiti in maniera asincrona.

Nel caso non ti sia chiaro quello che significa asincrono , è l'abilità di gestire un processo indipendentemente da altri. Sincrono che è l'opposto di asincrono, significa che i processi dipendono da altri processi. Per illustrarlo permettimi di usare lo scenario di una pagina Web classica.

Assumi di avere una pagina A e in questa pagina un numero di elementi, inclusi una coppia di script e i tag.

Con un trasferimento di dati sincrono lo script ha bisogno di essere
processato prima di passare ad un secondo elemento. In questo modo il secondo elemento dipende sempre dal primo. In questo modo si crea un collo di bottiglia di una connessione tra pagina Web e browser.
Gli Style tag e i link nella sezione head di un documento creano lo stesso effetto collo di bottiglia. Vengono processati uno alla volta prima che altri elementi della pagina siano scaricati.

Una volta che sono stati processati, gli elementi nella sezione body possono usare connessioni che occorrono nello stesso tempo per velocizzare il processo di download. Per esempio, la maggior parte dei server gestiscono fino a due a quattro connessioni nello stesso tempo tra pagina Web e browser.

Questo significa, che da 2 fino a 4 immagini o altri elementi della pagina sono caricati nello stesso tempo. Prima che il processo inizi, quello che c'è tra i tag head deve essere processato per primo e può rallentare considerevolmente il caricamento della pagina.

Questo avviene se stai usando molteplici tag CSS e Javascript.

Quasi tutte le pagine Web e i blog su Internet utilizzano questo metodo. Non è difficile comprendere come questo comporti un rallentamento nel caricamento delle pagine Web.

Il metodo di caricamento asincrono è differente perchè il processo di caricamento è gestito in maniera indipendente superando il collo di bottiglia del design tradizionale delle pagine Web.

L'essenza di questa tecnica sta nell'uso minimale del JavaScript e poi nello spingere tutti gli altri tag correlati, incluso il resto del JavaScript, CSS etc attraverso un xmlhttprequest object.

Questo metodo utilizza molteplici connessioni aumentando la velocità della pagina considerevolmente.


Eddie Traversa ti accompagna dentro Ajax. Approfondisci...



L'autore:

Eddie Traversa è uno sviluppatore Web da più di 10 anni ed ha scritto molti articoli sul Javascript e DHTML e inoltre ha un sito di risorse per sviluppatori http://www.dhtmlnirvana.com/

 
 
 
 
 
Commenti    
blog comments powered by Disqus

 

 

 

 

4455
 




 

I Toolkit di Robin


 









 

 

 

 

  • RSS Feed

          Mail
    Nome:
    Email:
     



     
     

     

    Web Analytics