Kaj je AJAX?

AJAX je izraz, ki se uporablja za opis pristopa k oblikovanju in izvajanju spletnih aplikacij. To je akronim za asinhroni JavaScript in XML. Izraz je bil prvič predstavljen v članku Jesseja Jamesa Garretta iz podjetja Adaptive Path, podjetja za spletno oblikovanje s sedežem v San Franciscu. Izraz je zasnoval, ko je spoznal potrebo po enostavnem, prodajnem načinu, da strankam predstavi določen slog oblikovanja in gradnje.

Glavni namen AJAX-a je pomagati, da spletne aplikacije delujejo bolj kot namizne aplikacije. HyperText Markup Language (HTML), jezik, ki poganja svetovni splet, je bil zasnovan na ideji hiperbesedila – strani z besedilom, ki bi jih lahko v sebi povezali z drugimi dokumenti. Za delovanje HTML večina dejanj, ki jih končni uporabnik izvede v svojem brskalniku, pošlje zahtevo nazaj spletnemu strežniku. Strežnik nato obdela to zahtevo, morda pošlje nadaljnje zahteve in na koncu odgovori z vsem, kar je zahteval uporabnik.

Čeprav je ta pristop morda dobro deloval v zgodnjih dneh interneta, je za sodobne spletne aplikacije nenehno čakanje med kliki za uporabnike frustrirajuće in služi za zmanjšanje celotne izkušnje. Uporabniki so se navadili na izjemno hitre odzive v svojih namiznih aplikacijah in so nezadovoljni, če spletno mesto ne more ponuditi enakega takojšnjega odziva. Z dodajanjem dodatne plasti med uporabniškim vmesnikom in komunikacijo s strežnikom aplikacije AJAX odstranijo velik del zamika med interakcijo uporabnika in odzivom aplikacije. Ker AJAX postaja vse pogostejši v priljubljenih spletnih aplikacijah, se uporabniki vedno bolj navadijo na ta takojšnji odziv, kar pomaga spodbuditi več podjetij k sprejetju metodologij AJAX.

Aplikacija AJAX je sestavljena iz številnih aplikacij, ki se uporabljajo skupaj za ustvarjanje bolj brezhibne izkušnje. To vključuje razširljivi HTML (XHTML) in kaskadne slogovne tabele (CSS) za gradnjo osnovne strukture strani in njenega vizualnega sloga; nekakšen paket za interakcije z uporabo predmetnega modela dokumenta; obdelava podatkov z uporabo Extensible Markup Language (XML); pridobivanje podatkov z uporabo XMLHttpRequest; in JavaScript za pomoč tem različnim elementom med seboj. AJAX se hitro širi po spletu, primeri pa so vidni na številnih večjih spletnih mestih. Google Zemljevidi, na primer, v mnogih pogledih poosebljajo etos modela AJAX s svojo kompleksno funkcionalnostjo in praktično brezhibno interaktivnostjo.

Kot večina nastajajočih filozofij spletnega razvoja ima tudi AJAX svoj delež nasprotnikov. Eden od pogostih argumentov proti AJAX-u je, da v mnogih primerih krši nekatere pričakovane funkcionalnosti, kot je uporaba gumba Nazaj, kar povzroča zmedo. Čeprav obstajajo nekateri popravki za mnoge od teh zlomov, se le redko izvajajo do te mere, da je vedenje aplikacije AJAX skladno s pričakovanim vedenjem večjega brskalnika.