JSON과 XML의 차이
서버에서 클라이언트로 데이터를 보낼때 사용되는 파일 언어 중 대표되는 두가지 JSON, XML 에 관해 알아보려고 한다. 과거의 XML은 헤더와 태그 등 여러 요소들의 가독성이 떨어지고, 효율적이지 못하다는 평가를 받았다. 이를 보완하고 문제를 해결해줄 수 있는것이 JSON이다. W3C 표준이 XML이라 XML이 많이 사용되고 있지만, ECMAScript5에서 기본으로 JSON이 내장되게 되며 JSON을 사용하는 쪽으로 기울게 되었다.
JSON이란?
JavaScript Object Notation의 약자로, 브라우저 통신을 위한 속성-값 또는 키-값 쌍으로 이루어진 데이터 포맷이다.
[
{
"name" : "pencel",
"count" : 5
}
]
XML이란?
eXtensible Markup Language의 약자로 HTML과 비슷한 문자 기반 마크업 언어이다. 데이터를 저장하고 전달하는 목적으로 만들어졌으며 XML 태그는 HTML 태그처럼 미리 정의되어 있지 않고, 사용자가 직접 정의할 수 있다. 여는 태그와 닫는 태그로 이루어져 용량을 많이 차지한다는 단점이 있다.
<?xml version="1.0" encoding="utf-8"?>
<school>
<pencel>3</pencel>
<school>
JSON과 XML의 공통점
데이터를 저장하고 전달하기 위해 고안되었고, 기계뿐 아니라 사람도 쉽게 읽을 수 있다. 계층적 데이터 구조이며 프로그래밍 언어로 파싱이 가능하다. XMLHttpRequest 객체를 이용하여 서버로부터 데이터를 전송받을 수 있다.
JSON과 XML의 차이점
데이터를 표현하는 방식이 다르며, JSON은 타입을 가지고 있지만 XML은 아니다. JSON은 네임스페이스를 지원하지 않지만 XML은 네임스페이스를 지원한다. XML에 비해 JSON은 보안에 취약한 편이며, JSON은 UTF-8 인코딩만 지원하고, XML은 여러 인코딩을 지원한다.