Subscription Form
Contributors

AJAX(Asynchronous JavaScript and XML)는 대화식 웹 어플리케이션의 제작을 위해 아래와 같은 조합을 이용하는 개발 기법이다:

DHTML이나 LAMP와 같이 AJAX는 자체가 하나의 특정한 기술을 말하는 것이 아니며, 함께 사용하는 기술의 묶음을 지칭하는 용어이다. 실제로 AFLAX와 같이 사실상 AJAX 에 바탕을 두고 있는 유사/복합 기술들이 속속 나타나고 있다.

AJAX 어플리케이션은 실행을 위한 플랫폼으로 위에서 열거한 기술들을 지원하는 웹 브라우저를 이용한다. 이것을 지원하는 브라우저로는 모질라 파이어폭스, 인터넷 익스플로러, 오페라, 사파리 등이 있다. 단, 오페라는 현재 XSL 포맷팅 객체와 XSLT 변환을 지원하지 않는다(http://www.opera.com/docs/specs/).

AJAX 어플리케이션은 기존의 웹 어플리케이션과 무엇이 다른가

기존의 웹 어플리케이션은 폼을 채우고 제출(submit)을 하면, 웹 서버로 요청을 보내도록 한다. 웹 서버는 전송된 내용에 따라서 새로운 웹 페이지로 결과물을 되돌려준다. 이때 둘 사이에 중복되는 HTML 코드로 인해 많은 대역폭이 낭비된다. 게다가 이러한 방식으로는 네이티브 어플리케이션에 비해 고도로 대화형 사용자 인터페이스를 작성하기가 힘들다.

반면에 AJAX 어플리케이션은 필요한 데이터만을 주도록 웹 서버에 요청할 수 있다. 보통 SOAP나 XML 기반의 웹 서비스 언어를 사용하며, 웹 서버의 응답을 처리하기 위해 클라이언트 쪽에서 자바스크립트를 쓴다. 그 결과로 웹 브라우저와 웹 서버 사이의 교환되는 데이터량이 줄어들기 때문에 어플리케이션의 응답성이 좋아진다. 요청을 주는 수많은 컴퓨터에서 이 같은 일이 일어나기 때문에, 전체적인 웹 서버 처리량도 줄어들게 된다.

장단점

DHTML 어플리케이션과 같이, AJAX 어플리케이션에서는 브라우저마다의 편차를 고려해서 엄격한 테스트가 이루어져야 한다. 이 기술로써 얻는 이득은 어플리케이션의 속도와 응답성의 개선이다.

AJAX의 보급

이것은 이미 존재하던 기술이었지만, 2005년 초에 있었던 몇 가지 사례 이후로 인기를 끌기 시작했다. 먼저 구글구글 그룹스를 포함한 훌륭한 대화형 어플리케이션의 기반을 위해 비동기식 통신을 이용한 것이다. 두 번째로는 AJAX라는 용어가 AJAX: A new approach for a new application 기사에서 등장한 것으로, 이후 빠르게 대중화되어 이 기법의 보급에 도움이 되었다.

현재 대화형 웹 페이지를 위한 도구로서 AJAX를 이용하는 어플리케이션들이 급격히 늘어나고 있으며, 이는 부분적으로 이용할 수 있는 어플리케이션 툴킷(예: Ruby on Rails, DWR)이 늘어나 프로그래머들이 구현하기가 쉬어진 때문이다.

AJAX에 대한 비판

AJAX의 용어에 대해서 비판이 있어왔는데, Adaptive Path의 consultancy는 이 조어를 만든 사람[1]이 이미 있는 기법을 마케팅 수단(과 )으로써 사용하고 있다고 주장했다 [2] [3] [4].

AJAX 기술이 이전에는 일반적인 지칭이 없다는 점이 지적되어 왔기 때문에, 일부에서는 이 통일된 용어를 하나의 발전으로서 환영한다. 그러나 이 기술을 이용해 가장 특출한 어플리케이션들을 만든 사람 중 하나인 한 구글 엔지니어가 그들이 사용한 기술이 ‘자바스크립트’라고 간주한다는 얘기도 있다 [5].

AJAX는 소프트웨어 개발에 대한 새로운 접근방식이 아니다. 보다 높은 관점에서 표현 레이어는 하나의 폼 이면서 하나의 이벤트 핸들링 배후의 프로그래밍 레이어 같은 것으로, 흔히 프로그래밍 용어인 MVC로 알려져 있다. 이러한 프로그래밍은 예를 들어 이전의 프로그래밍 환경인 델파이, MFC, 비주얼 베이직, 오라클 ADF, 왼도우즈 Forms 등으로 매우 잘 알려져 있다. 이 같은 모델을 사용하는 어플리케이션들은 주변에 많이 있어왔고, WebDAV를 사용하는 마이크로소프트 아웃룩 웹 액세스와 브라우저에서 직접 웹 서비스를 이용하는 웹 기반의 ERP 시스템 P2plus [6] 같은 것들이 있다. 그러나 이전에는 표준적인 통신 모델이 없었기 때문에, 이들은 모두 독자적인 확장을 이용한다.

AJAX의 새로운 양상은 마이크로소프트인터넷 익스플로러만을 고려하면 되었을 예전의 기술과는 달리 이 같은 어플리케이션을 이용할 수 있는 브라우저가 다양해 졌다는 점이다.

AJAX와 접근성

AJAX 사용에 있어서, AJAX 기술을 지원하지 않는 브라우저를 위한 대체물 만드는 것은 거의 힘들다. 이 같은 한계는 WAI 접근성 지침에 거스르는 측면이 있다.

한편, 웹 개발자들은 때때로 AJAX를 단순히 웹 페이지의 일부분을 대체하기 위해 사용한다. 비 AJAX 사용자가 전체 페이지를 불러오는 것에 비해 AJAX 사용자는 페이지의 일부분만을 불러올 수가 있다. 이것으로 개발자들이 비 AJAX 환경에 있는 사용자의 접근성을 포함한 경험을 보호할 수 있으며, 적절한 브라우저를 이용하는 경우에 전체 페이지를 불러오는 일 없이 응답성을 향상시킬 수 있다.

외부 링크

*Sample Page: http://www.bywoong.com/blog/?i=common_rss_Sajax_comment (AJAX+PHP)

출처: http://blog.naver.com/ncs74/80017062038, 위키백과
관련글: Ajax : 웹 어플리케이션의 새로운 접근

start_moreless||AJAX관련링크|||
관련 기사
http://news.com.com/Will+AJAX+help+Google+clean+up/2100- 1032_3-5621010.html
http://www.adaptivepath.com/publications/essays/archives/000385.php
http://www.themaninblue.com/writing/perspective/2005/03/02/

한글 소개 자료 (PDF)
http://www.likejazz.com/29692.html

Ajax in Flash
http://www.docuverse.com/blog/donpark/EntryViewPage.aspx?guid=495742b9-af21-4ab2-9ad7-ab0229a6ecf9

Sajax – Simple ajax toolkit for PHP
http://www.modernmethod.com/sajax/

Ajax DEMO (ASP.NET)
http://weblogs.asp.net/pleloup/archive/2005/04/06/397371.aspx

관련 북마크
http://del.icio.us/popular/ajax

SOAP와 XMLHTTP를 사용한 응용프로그램 사용하기
http://www.asptomorrow.net/asptoday/20000718/soap.asp? lectureid=62

Dynamic HTML and XML_ The XMLHttpRequest Object
http://developer.apple.com/internet/webcontent/xmlhttpreq.html

Very Dynamic Web Interfaces
http://www.xml.com/pub/a/2005/02/09/xml-http-request.html

AJAX Matters
http://ajaxmatters.com/r/welcome

채팅
http://aimh.new21.net/test/sajax/example_wall.php

phpschool 게시글
http://www.phpschool.com/bbs2/inc_view.html?id=12070&code=tnt2&start=0&mode=search&field=title&search_name=&operator=and&period=all&category_id=&s_que=ajax

AJAX에 대해 문의 하신 분이 있어 간단한 설명을 다음에 주소에 올려 두었습니다.
http://wednus.com/imod/viewtopic.php?t=419

외국인 칼럼- 개발자인가?
http://www.adaptivepath.com/team/jjg.php
http://jjg.net/

AJAX Matters – Asynchronous JavaScript and XML and XMLHTTP development information
http://www.ajaxmatters.com/

Ajaxian Blog
http://www.ajaxian.com/

Ajax Blog
http://ajaxblog.com/

AjaxPatterns
http://www.ajaxpatterns.org/

AjaxFaces_ General and Complete Integration Solution for JSF and Ajax
http://www.ajaxfaces.com/

한글 소개 자료 (PDF)
http://www.likejazz.com/29692.html

관련 북마크
http://del.icio.us/popular/ajax

Building Dynamic Web Applications with AJAX(ppt)http://blog.joshuaeichorn.com/slides/Building_Rich_Web_Applications_With_AJAX/

AJAX in Action
http://www.javarss.com/ajax/j2ee-ajax.html

AJAX Java BluePrints Solutions Catalog
https://bpcatalog.dev.java.net/nonav/ajax/index.html

Ajax – Wikipedia
http://en.wikipedia.org/wiki/AJAX
end_moreless

 

Total
0
Shares

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다