AJAX
1. AJAX의 탄생과 역사
1990년대 후반, OS 시장의 절대 강자 마이크로스프트(MS)는 Internet Explorer3를 만들 때 즈음, Windows OS에 Java 기술을 통합하고 있었습니다. 이 과정에서 Java에 대한 권리를 보유한 썬마이크로시스템즈와 법적 분쟁이 발생했습니다. 썬마이크로시스템즈는 MS가 Java를 무단으로 사용해 이득을 취했던 MS를 라이선스 계약 위반으로 고소합니다.

이 법적 분쟁의 결과로 MS가 패소하게 되면서, MS는 Windows에서 Java와 관련된 기능을 제거해야 했습니다. 이때 Java에 의존하던 여러 애플리케이션에 영향을 미쳤는데, 그 중 하나가 바로 이메일을 보내기 위한 애플리케이션인

MS는 Java 기능을 대체할 수 있는 기술을 찾아야 했으며, JavaScript를 이용한 새로운 기술을 개발합니다. 이때 탄생한 것이 바로 ActiveXObject 입니다.
이 객체의 주요 기능이 바로 JS 코드를 통해 서버와 HTTP 통신 을 할 수 있다는 것이었습니다. 즉, JS로 HTTP 요청을 보내고 응답을 받을 수 있었습니다.
ActiveXObject의 등장으로 브라우저는 이전처러 페이지 전체를 새로고침하지 않고도 HTTP 요청을 보내 서버와 데이터를 주고받고 화면을 갱신할 수 있게 되었습니다. 이는 웹 애플리케이션 개발에 큰 변화를 가져왔습니다. 대표적으로 한 번에 수백명에게 이메일을 보낼 수 있는 최초의 서비스인 Gmail, 실시간으로 지도를 보여주는 구글맵 등이 등장하게 되었습니다.
시간이 지나 ActiveXObject는 XMLHttpRequest라는 이름으로 표준화되었고, 2005년에 제시 제임스 게럿(Jesse James Garrett)이라는 개발자가 JS 기술을 이용해 비동기적으로 서버와 통신할 수 있는 기술을 'AJAX'라고 통칭하여 부르기 시작했습니다.
AJAX는 Asynchronous JavaScript and XML의 약자로, 비동기적으로 서버와 통신할 수 있는 기술을 의미합니다. 이후 AJAX는 웹 애플리케이션 개발에 있어 필수적인 기술로 자리 잡게 되었습니다.
AJAX: A New Approach to Web ApplicationsAJAX 이전의 서버 통신
AJAX가 나오기 이전에 클라이언트가 데이터를 서버에 요청하는 방법은 브라우저 주소창에 특정 URL을 입력하거나, HTML 요소인 <a>
혹은 <form>
을 이용하는것 이었습니다.
-
서버는 요청 받은 데이터가 포함되어 있는 HTML 파일을 같이 전송합니다. 필요한 데이터만 받아오는 AJAX에 비효율적이었습니다. 마치 작고 귀여운 아기 벨로시랩터 레고가 가지고 싶다면 5만원짜리 세트로 구입해야만 하는것과 비슷합니다
-
HTML 파일 전체가 교체되는 방식이기 때문에 화면이 렌더링되는 과정에서 화면이 깜빡이는 현상도 함께 나타났습니다.