Co to jest AJAX?

AJAX to termin używany do opisania podejścia do projektowania i wdrażania aplikacji internetowych. Jest to akronim od asynchronicznego JavaScript i XML. Termin ten został po raz pierwszy wprowadzony w artykule Jessego Jamesa Garretta z Adaptive Path, firmy zajmującej się projektowaniem stron internetowych z siedzibą w San Francisco. Wymyślił ten termin, kiedy zdał sobie sprawę z potrzeby łatwego, dającego się sprzedać sposobu na przedstawienie klientom określonego stylu projektowania i budowania.

Głównym celem AJAX jest ułatwienie działania aplikacji internetowych bardziej jak aplikacje komputerowe. HyperText Markup Language (HTML), język, który napędza sieć WWW, został zaprojektowany wokół idei hipertekstu – stron tekstu, które mogą być połączone w sobie z innymi dokumentami. Aby HTML mógł działać, większość czynności wykonywanych przez użytkownika końcowego w przeglądarce wysyła żądanie z powrotem do serwera WWW. Serwer następnie przetwarza to żądanie, być może wysyła dalsze żądania i ostatecznie odpowiada tym, czego zażądał użytkownik.

Chociaż to podejście mogło działać dobrze we wczesnych dniach Internetu, w przypadku nowoczesnych aplikacji internetowych ciągłe czekanie między kliknięciami jest frustrujące dla użytkowników i służy osłabieniu całego doświadczenia. Użytkownicy przyzwyczaili się do niesamowicie szybkich odpowiedzi w swoich aplikacjach komputerowych i są niezadowoleni, gdy witryna internetowa nie może zaoferować takiej samej natychmiastowej odpowiedzi. Dodając dodatkową warstwę między interfejsem użytkownika a komunikacją z serwerem, aplikacje AJAX usuwają znaczną część opóźnień między interakcją użytkownika a odpowiedzią aplikacji. Ponieważ technologia AJAX staje się coraz bardziej popularna w popularnych aplikacjach internetowych, użytkownicy stają się coraz bardziej przyzwyczajeni do tej natychmiastowej reakcji, co pomaga skłonić więcej firm do przyjęcia metodologii AJAX.

Aplikacja AJAX składa się z wielu aplikacji używanych w połączeniu, aby zapewnić bardziej płynne działanie. Obejmuje to Extensible HTML (XHTML) i Cascading Style Sheets (CSS) do budowania odpowiednio podstawowej struktury strony i jej stylu wizualnego; pewnego rodzaju zestaw interakcji wykorzystujący obiektowy model dokumentu; manipulacja danymi przy użyciu Extensible Markup Language (XML); pobieranie danych za pomocą XMLHttpRequest; i JavaScript, aby pomóc tym różnym elementom współdziałać ze sobą. AJAX szybko rozprzestrzenia się w sieci, a przykłady są widoczne w wielu głównych witrynach. Na przykład Google Maps pod wieloma względami uosabia etos modelu AJAX, z jego złożoną funkcjonalnością i praktycznie bezproblemową interaktywnością.

Podobnie jak większość pojawiających się filozofii tworzenia stron internetowych, AJAX ma swój udział w krytykach. Jednym z powszechnie wyrównywanych argumentów przeciwko AJAX jest to, że w wielu przypadkach łamie niektóre oczekiwane funkcje, takie jak użycie przycisku Wstecz, powodując zamieszanie. Chociaż dla wielu z tych przerw istnieją pewne poprawki, rzadko są one implementowane w takim stopniu, w jakim zachowanie aplikacji AJAX jest zgodne z oczekiwanym zachowaniem większej przeglądarki.