오늘은 웹 기술 중 '데이터'를 위한 기술에 대해 알아보겠다. 


XML (eXtensible Markup Language)

XML은 전자적으로 데이터를 교환하기 위한 표준이다. HTML과 같은 마크업 언어이지만 특정 태그에 제약을 받지 않는다. 데이터를 표현하기 위한 언어이니만큼 태그를 사용자가 정의할 수 있도록 하여 내용성을 강조 하였다.

                                                                    (예시) 

 HTML

XML 

 <h1><fond=bold>Hello!!</font></h1>

<greeting>Hello!!</greeting> 


- XML의 특징

  • 단순성: XML은 다른 코드셋이 아닌 일반 텍스트로 되어 있어 판독이 가능하며, HW/SW에 의존하지 않으므로 단순해질수 있는 특징이 있다.
  • 표준성: W3C가 주도하므로 스펙의 표준화를 이룰 수 있다. 
  • 구조성: Data에 구조를 부여한다. XML은 data를 설명하는 의미가 담긴 태그를 제공할 뿐 아니라 특정 구조를 저장한다. 
  • 확장성: 사용자 임의로 무한한 태그 확장을 할 수 있으며, 상황에 따라 적절한 태그의 부여가 가능하다. 
  • Character Set: 모든 XML프로세서는 16bit Unicode를 지원하므로 한글과 같은 2byte 문자권의 데이터도 처리 가능하다. 

참고

http://blog.daum.net/_blog/BlogTypeView.do?blogid=0FDfM&articleno=11281814

http://marcof.tistory.com/45


JSON (JavaScript Object Notation)

JSON(JavaScript Object Notation)의 약자로 JavaScript에서 객체를 만들 때 사용되는 경량의 DATA-교환 형식이다. 이 표현식은 사람도 이해하기 쉽고 기계도 이해하기 쉬우면서 데이터의 용량이 작다. 이런 이유로 최근에는 JSON이 XML을 대체해서 설정의 저장이나 데이터 전송 등에 많이 사용된다. 

- JSON의 구조 및 특징
  1. Ajax로 서버와 통신하며 손쉽게 데이터를 주고 받을 수 있다.  
  2. Name, Value 형태의 쌍으로 구성된다.
  3. 값들의 순서화된 리스트로 나타난다.

 

 XML

JSON 

용량 

크다 

가볍다 

데이터 타입 

String 

stringm sumber, array, boolean 

속도 

느리다 

빠르다 

구성 

<tag>

객체, 배열 구조 



참고

생활코딩 (https://opentutorials.org/course/1375/6844)


Ajax (Asynchronous JavaScript and XML)

웹브라우저는 기본적으로 정적인 시스템이다. 흔히 우리가 인터넷 서핑을 하며 게시물들을 볼 때, 새로운 게시물이 올라왔는지 확인하기 위하여 '새로고침'을 누른다. 이는 웹이 전자 문서를 염두에 두고 고안된 시스템이기에 당연하게 생각되었다. 

하지만 Ajax가 도입되며 모든 것이 바뀌었다. Ajax는 웹브라우저와 웹서버가 내부적으로 데이터 통신을 할 수 있게 해준다. 그리고 변경된 결과를 웹페이지에 프로그래밍적으로 반영함으로써 웹페이지의 로딩 없이 서비스를 사용할 수 있게 한다. 예로 여러분이 Facebook을 사용할 때에 '새로고침'을 누르지 않더라도 새로운 포스팅이 업데이트 되는 것을 확인할 수 있다. 

Ajax는 JavaScript를 이용하여 비동기적으로 서버와 브라우저가 데이터를 주고받게 해준다. 이때 사용하는 API가 XMLHttpRequest이다. Ajax의 약자를 확인해보면 XML이라는 단어가 들어가지만 꼭 XML만 사용해야하는 것은 아니다. 오늘날은 오히려 JSON을 활용하여 데이터 통신이 더 많이 이루어지고 있다. 

참고


+ Recent posts