BLOG main image
분류 전체보기 (313)
교육 (13)
NEIS (6)
Edufine (0)
Programmer (5)
Android Programming (1)
Internet W3 (18)
JAVA Programming (9)
JSP/Servlet (1)
Framework (7)
Spring For Beginner (4)
eGovFrame (10)
MEAN Stack (2)
NodeJS (5)
SublimeText (30)
SublimeText_Tips (18)
Eclipse (16)
JavaScript (8)
jQuery (12)
jQuery_tips (1)
Ajax (3)
DWR(Direct Web Remote) (4)
JSON(JS Object Notation) (4)
Oracle (2)
MySQL (28)
OS (16)
Download (3)
Life (10)
Favorit Site (1)
Books (2)
Healthy (1)
Stocks (1)
HTML5/CSS (1)
Python (4)
Security (7)
CISSP (0)
Ruby On Rails (5)
일기장 (0)
영어 교과서(중2) (3)
알고리즘 (0)
Go Lang (3)
VB 2010 (12)
C# (1)
정보보안기사(네트워크보안) (0)
업무 활용 엑셀 (11)
틈틈이 활용팁 (14)
하루 하루 살아가며 ……. (2)
기술 (1)
파이썬 & 데이터분석 (1)
Visitors up to today!
Today hit, Yesterday hit
daisy rss
tistory 티스토리 가입하기!
2015. 7. 9. 11:48

Ajax(Asynchronous JavaScript and XML)

웹 어플리케이션 제작을 위해, 다양한 기술을 조합 이용하는 개발 기법.
자체가 특정 기술을 말하는 것이 아닌, 함께 사용하는 기술의 묶음을 지칭하는 용어.



Ajax를 구현하기 위한 다양한 기술

  1. HTML
  2. CSS
  3. DOM
  4. JavaScript
  5. XML
  6. XSLT
  7. XMLHttpRequest
  8. JSON

 

Ajax의 특징

장점

  • 비동기 요청 가능
  • 페이지 이동 없이 고속으로 화면을 전환
  • 수신 데이터 량을 축소, 클라이언트에게 처리를 위임 가능

단점

  • Ajax를 쓸 수 없는 브라우저에 대한 문제
  • Http 클라이언트의 기능이 한정되어 있는 상황
  • 페이지 이동 없는 통신의 보안 문제
  • 지원 Charset의 한정
  • Debugging의 어려움
  • 요청 남발에 의한 부하

 

Ajax의 역사와 보급

XMLHttpRequest는 Microsoft에서 Outlook Web Access 2000을 위한 개발에서 하나의 컨셉으로 시작된다. Microsoft에서 구현한 XMLHTTP 및 ActiveX 객체를 호출한다. 최초 Internet Explorer 5.0에서 Script 언어로 지원. 모질라 프로젝트는 2002년 Mozilla 1.0 에서 최초의 XMLHttpRequest를 호환하는 기술을 구현, 이후 Apple의 Safari 1.2, Opera 8.0가 뒤를 이었다.


Ajax의 보급

Ajax는 이미 존재하던 기술이다.
2005년 초 몇 가지 사례 이후 인기를 끌기 시작, 구글의 대화형 애플리케이션들에 의해 관심이 집중되었다.
Ajax라는 용어의 등장으로 이 기술은 빠르게 확산되었다.
Ajax를 이용하는 애플리케이션의 급격한 증가와 함께 Ajax의 구현을 돕는 툴킷(Ruby on Rails, DWR 등)이 나타나게 되었다.

Ajax에 대한 비판
Ajax라는 용어는 기존에 존재하는 기술들에 대한 마케팅 수단이다.
Ajax 기술이 이전에는 일반적인 기술이 없었기 때문에 용어의 등장 자체가 하나의 발전이다.
Ajax라는 용어는 기술을 단순히 ‘자바스크립트’에 한정하는 효과를 가져온다.
Ajax는 새로운 개발방법이 아니다. 이는 기존에 웹이 아닌 애플리케이션의 개발을 위한 기술방법과 다르지 않다.


Ajax의 XMLHttpRequest 외의 구현방법
  1. Hidden Frame에 의한 처리
  2. Netscape의 LiveConnect
  3. MS의 ActiveX
  4. MS의 XML Data Islands
  5. Adobe의 Flash Player
  6. Java의 Applet
Ajax 프레임워크

Prototype.js 널리 알려져 있는 Ajax 프레임워크
http://www.prototypejs.org/

Script.aculo.us
Prototype.js를 기반으로 하는 여러 인터페이스의 제공
http://script.aculo.us/

jQuery
Prototype.js 만큼 널리 사용되는 Ajax 프레임워크
http://jquery.com/

jQuery UI
jQuery를 기반으로 하는 여러 인터페이스의 제공
http://jqueryui.com/

Dojo
다양한 화면효과 및 위젯을 제공
http://dojotoolkit.org/

Google Web Toolkit
구글에서 배포중인 Ajax 프레임워크
http://code.google.com/intl/ko/webtoolkit/

ASP.NET AJAX
MS에서 공식 개발된 ASP.NET 지원용 AJAX 프레임워크
http://www.asp.net/ajax/

YUI
Yahoo User Interface
http://developer.yahoo.com/yui/

 


RIA (Rich Internet Application)

http://blog.naver.com/agapeuni/60071814239

위 사이트는 RCP에 대한 설명을 하고 있다. RCP (Rich Client Platform) 란 용어에서 Rich Client 라는 용어의 뜻을 다음과 같이 말하고 있다.

리치 클라이언트(rich client)라는 용어는 1990년대 초 비주얼 베이직과 델파이 등을 사용하는 클라이언트 애플리케이션을 개발하는 것이 유행하면서 나타나기 시작했다. 이러한 클라이언트 애플리케이션이 수적으로나 인기면으로나 크게 늘어난 것은, 사용자가 "풍부한" UI 기능을 탑재한 애플리케이션을 매우 필요로 했기 때문이다. 이를 사용자 경험(rich experience)이라고 표현한다. 그리고 사용자 중심의 기능을 담고 있다. 다시 말해서 일상적인 개발 단위는 재활용하고, 개발 시간을 단축할 수 있게 해준다. <br />

RIA의 중요 포인트는 RCP에서 강조하는 부분과 차이가 없다고 생각한다.



참고
http://enc.daum.net/dic100/contents.do?query1=10XX148248
http://enc.daum.net/dic100/contents.do?query1=20X1594360
http://www.ashleyit.com/blogs/brentashley/category/ajax/

의문과 욕심으로 이것 저것 검색하여 찾아보게 되었다. 맞는 부분도 있고, 맞지 않는 부분도 있을 것 같다. 더러는 말도 않되는 말도 있을지 모르겠다. 하지만 이는 나의 주관적 시각이 크게 작용하는 것이고, 이 글을 읽는 사람 역시 그 자신 만의 시각으로 평가 할 것 이라 생각한다.

이미 Ajax라는 단어가 어느정도 단어나 용어로써 자리를 잡아가고 있지만 사전적의미? 교과서적인 해석? 이란것이 나에게 필요했었나 보다.

지금에 와서 Ajax란것 그냥 하면 되는 기술이다. 더욱 중요한 것은 이 Ajax라는 것을 통하여 어떤 모습으로 웹 어플리케이션을 구현하고, 그 구현과정과 구조를 생성하는 것인가 생각한다.

개발 방법도, 프레임워크도 많이 세상에 모습을 내놓고 있다. 때문에 내가 어설피 그 부분을 이야기 할 필요성은 없는 것 같다. 나 역시 여기저기서 눈동냥하여 개발하는 주제에 무슨....

Ajax, RIA라는 용어는 특정 기술을 칭하는 것이라기 보단, 특징을 보이는 집합들의 대명사와 같은 용어로 시각에 따라서 약간은 다양하게 해석되는 것이 아닌가 한다.

더욱 재미있는 것은 이 두 용어가 개발자의 시각보다는 기획이나 사용자의 시각에서 그 의미가 정리된것이 아닌가 하는 생각이다. 적어도 나의 시각에서는 말이다.

포스팅의 중요 포인트는 뭔일을 하든 유연하게 생각하고 행동해야 하지 않을까 라는 것이다.
부러지는 것 보단 굽히는 것이 낮다고 본다. 세상이나, 프로그램이나 서서 보는 것과 굽혀서 낮은 자세로 보는 것이 참 많이 다르단 생각이다.

Ajax 이야기를 꺼내면 보통 크로스 브라우징이나, 플래시 이야기로 많이 흐르게 된다. 그러다 보면 결국 MS를 까는 JAVA개발자가 좀 많은 편이다. 적어도 내 주변에는 말이다. 하지만 난 좀 다르다. 아니 정확하게 말하면 내가 깔수 있는 상대는 아닌것 같다. 쉽게 이야기 하면 부끄러워 까지도 못하겠다.

까일만큼 많은 것을 이룩했고, 안티 수 만큼이나 훌륭한 것이 많이 있다고 생각한다.

반응형

'Ajax' 카테고리의 다른 글

[Ajax] Ajax 정의, 동작원리, 기술  (0) 2015.07.09
[Ajax] Ajax 간단한 예제 (helloAjax.html)  (0) 2015.07.09