링크를 누른뒤 백버튼을 눌렀을 때, 그 위치로 돌아가는 것이 일반적인 사용성인데, 보고 있는 페이지가 ajax로 scroll 혹은 pagination이 구현되어 있을 때, 현재 보고 있는 위치를 기억하는 문제가 있다. 9년전 idtail . com 만들 때도 고민 많이 했던 부분이었는데, 지금의 페이스북도 답이 크게 없나보다. 스크롤 중에 내용을 보려고 클릭하는 것은 뭔가 안심이 안돼.

저작자 표시 동일 조건 변경 허락
신고
Ajax 기술에 대해서는 알지만, 한번도 Ajax 기술을 응용하여 개발해 본 적이 없는 대상을 상대로 쓴 글입니다. 주로 웹이 주된 기술이 아닌 회사의 관리자급을 대상으로 쓰는 글이라 생각해주세요.

흔이 말하는대로 Ajax는 개발 경향을 포장하기 위해 만들어진 용어이며, 새로운 기술이 아닙니다. 이제와 새삼이런 글을 작성하는 이유는 제가 느끼는 관리자급들이 이 용어를 사용할 때, 정말 그 의도 된대로 사용되고 있는 것을 보기 때문입니다.

javascript가 더이상 간단한 기술에 사용되는 것이 아니라 웹 어플리케이션의 엔진을 만드는 핵심 기술로 사용되고 있고, 이런 기술이 javascript를 조금알아서는 할 수 없고, 개인으로서는 몸 값을 높히거나, 팀의 개발 패턴의 방향을 설명하는 기술이 되는데, 뭔가 이전과의 차별점을 주는 용어가 필요해서 Ajax 같은 용어가 필요했습니다.

그런데, Ajax라는 말을 사용할 때는, 좁은 의미에서는 javascript 내부 혹은 ActiveX로 되어 있는 XMLHttpRequest 개체를 이용하여 프로그래밍하는 방법을 말합니다. 그 개체의 유일한 callback 함수 구조가 onreadystatechange 이며, Ajax의 "Asynchronous"에 해당하는 기술의 시작점입니다.

Ajax 용어가 나온 이후로 1,2년은 저 개체를 잘 활용하는 방법을 Ajax를 사용한다고 하였지만, 지금은 넓은의미로는 Ajax라는 기술을 쓴다고 하면, 대개 javascript framework(e.g prototype.js, dojo, jquery, mootools 등등)안에 들어 있는 Ajax 기술을 사용하는 것을 의미합니다.

이 기술들에는
  • 특정 DIV 값의 innerHTML 변환하기
  • API를 호출하여 JSON 형식으로 받아 처리하기
  • Light Box 처리하기(새창으로 뜨는 대신 박스하나만 하얗고 나머진 어두워지는 대화상자)
  • callback 함수와 개체를 연결하는 closure 만들기
이 정도의 기술이 들어가고, 더불어 각종 화면 이펙트를 위한 함수나, XPath 응용을 위한 기술, style 처리를 위한 기술, 함수형언어에서 빌려온 개념등등이 더 들어 갑니다.

따라서, Ajax 기술이 실제적으로 하나의 관리대상이 되는 기술이라고 한다면, 개발팀에서 선호하는 framework을 기반으로 그것에 기반한 front-end 기술의 총체라고 생각해야합니다. Ajax만을 위한 library는 없으며, javascript 관련 library에 일부를 차지하고 있기 때문입니다.

이렇게 되면, 사실 Ajax 기술이라고 표현하기 보다는 Javascript 기술이라고 해야겠지요. 그러나, 앞에서도 얘기했듯이  Javascript 기술이란 표현이 전통적으로는 Copy & Paste에 의한 효과수준으로 인식되기 쉽기 때문에, 조금 포장되어 나온 Ajax라는 용어를 쓰는 것일 뿐입니다.

기술 보유목록에 "javascript" 라고 쓰고 싶지만, Ajax를 대충아시는 분들이 보기에는 마치 C언어 옆에 쓰기엔 부끄러운 기술처럼 느끼시는 분들을 위해 Ajax라고 쓰셨다면, Ajax 대신, "Javascript Framework" 이라고 쓴다거나, "Ajax Framework"이라고 쓰는 것이 사실 요즘 추세를 반영하는 말이 될 것 같습니다.

신고
  1. 2008.09.09 04:15

    비밀댓글입니다

    • 최호진 2008.09.09 10:26 신고

      하나 만들까?

      과거 yahoo mail이 오픈소스로 릴리즈 된적이 있는데.. 그런게 필요하쇼?

      블럭은 기록을 함 볼께

  2. miriya 2008.10.06 11:17 신고

    말은 좀 안맞지만 어쩔 수 없는 부분 같네요 ㅎㅎ

+ Recent posts