Ajax

Ajax (ingl. Asynchronous JavaScript And XML) on kogum omavahel seotud veebiarenduse tehnikaid, mida kasutatakse rakenduse kliendi poolel interaktiivsete veebirakenduste loomisel.

Ajax võimaldab veebilehtedel JavaScriptiga serverisse tagaplaanil päringuid teha ja andmeid vastu võtta, segamata avatud lehe kuvamist ja olekut. Ajaxi kasutus on suurendanud interaktiivsete ja dünaamiliste veebilehtede arvu. Andmete saamiseks kasutatakse XMLHttpRequest objekti. Vaatamata nimele, ei ole Ajax-is XML-i kasutus tegelikult vajalik.

Nagu DHTML ja LAMP, ei ole ka Ajax iseseisev tehnika, vaid tehnoloogiate kogum. Ajax kasutab HTML-i ja CSS-i kombinatsiooni, et teavet üles märkida ja kujundada. DOM-i poole pöördutakse JavaScripti kasutades, et dünaamiliselt kuvada esitatavat teavet. JavaScript ja XMLHttpRequest võimaldavad teavet serveri ja brauseri vahel asünkroonselt vahetada, et vältida lehe uuestilaadimist.

Ajalugu 

1990. aastatel puudus brauserites ja veebilehtedel piisav keerukus, et võimaldada kiiret ja reageerivat kasutamist. Vormide täitmine oli tüütu, sest kogu vajalik teave tuli sisestada ja saata veebiserverile. Vormi andmed kontrolliti ja probleemide ilmnemisel kuvati sama vorm uuesti. Teabevoog oli ebaühtlane ja katkestatud, näidates HTTP seisunditut olemust.

Lehe sisu asünkroonne laadimine sai võimalikuks aastal 1995, kui ilmusid Java apletid. Need võimaldasid pärast lehe laadimist kliendi poolel andmeid serverilt asünkroonselt laadida. Tagaplaanil serverile esitatavate HTTP-päringute ja asünkroonse veebitehnika kasulikkus jäi segaseks, kuni Google hakkas AJAXit laialdaselt Gmailis (2004) ja Google Mapsis (2005) kasutama.

Lühendi "AJAX" mõtles välja Jesse James Garrett aastal 2005 duši all olles, kui mõistis, et vajab lühikest terminit tehnikakogumile, mida ta tahtis kliendile esitada.

Tehnikad 

AJAX on saanud laia tehnikate rühma nimetuseks, mida saab kasutada veebirakenduste realiseerimiseks, mis tagaplaanil vahetaksid serveriga andmeid. Artiklis, mis esimest korda tutvustas terminit "AJAX", selgitas Garrett, et vajalikud on järgmised tehnikad:
 HTML või XHTML ja CSS esitamiseks
 DOM dünaamiliseks kuvamiseks ja andmetega ümberkäimiseks
 XML ja XSLT andmete vahetamiseks, manipuleerimiseks ja kuvamiseks
 XMLHttpRequest objekt asünkroonseks kommunikatsiooniks
 JavaScript (ECMAScript), et kõike seda omavahel siduda

Pärast seda on aga Ajaxis toimunud mitu muutust:
 JavaScript ei ole ainuke kliendi skriptimiskeel, mida saab kasutada AJAXi rakenduses. Teised keeled, näiteks VBScript, suudavad samuti neid ülesandeid täita. Sellele vaatamata on JavaScript kõige populaarsem keel AJAXi programmeerimisel.
 XML ei ole andmevahetuseks vajalik ja seega ei ole vajalik ka XSLT. JavaScript Object Notation (JSON) on alternatiivse andmevahetusvorminguna tihti kasutusel, kuigi võimalikud on teisedki vormingud, näiteks eelvormindatud HTML või lihttekst.

Viited

Välislingid 

 Ajax: A New Approach to Web Applications Artikkel, mis lõi termini.
 Ajax Open Directory Project
 Ajax Tutorial get, post, text ja XML näited

Veeb
Veeb 2.0
XML