이것저것

JSON vs XML 본문

Web

JSON vs XML

nays111 2021. 4. 29. 12:54

JSON (JavaScript Object Notation)

- 브라우저 통신을 위한 속성-값 또는 키-값 쌍으로 이루어진 데이터 포맷이다.

 

특징

- 사용하기 쉽다.

- 적은 메모리 공간을 사용하기 때문에 빠르다.

- 매핑을 생성하지 안하도 된다. (Jackson API 가 직렬화할 여러 개체에 대한 기본 매핑을 제공한다.)

- 종속성 : JSON 을 사용하기 위해 다른 라이브러리가 필요하지 않다.

 

JSON의 장점

- 모든 브라우저에 대한 지원을 제공한다.

- 구문이 간단하고, 직렬화가 가능하다.

- 생성, 조작, 읽기, 쓰기가 쉽다.

 

JSON의 단점

- 네임 스페이스 지원이 없다. ( 확장성이 부족)

- 형식적인 문법 정의 지원( 문법을 지켜야한다)

- 제한된 개발 도구 지원

//JSON 예
{"pets":[
  { "type":"강아지", "name":"멍멍" },
  { "type":"고양이", "name":"야옹" },
  { "type":"토끼", "name":"깡총" }
]}

XML (eXtensible Markup Language)

- HTML 과 비슷한 문자 기반의 마크업 언어이다. (HTML 은 데이터를 보여주는 목적이지만, XML 은 데이터를 저장하고 전달하는 목적이다.)

- XML 태그는 HTML 태그와 다르게 미리 정의되어 있지 않고, 사용자가 직접 정의 가능하다.

 

특징

- 구조화된 형식은 프로그램에서 읽고 쓰기가 쉽다.

- 확장 가능한 마크업 언어이다.

 

XML 의 장점

- 시스템 및 애플리케이션 간에 문서 전송이 가능하다.

- HTML 에서 데이터를 분리한다.

 

XML의 단점

- 처리 응용 프로그램이 필요하다

- 내장 데이터 유형 지원이 없다

- XML 구문이 중복된다

- 사용자가 자신의 태그를 생성하는 것을 허용하지 않는다

- 텍스트 기반 데이터 전송 형식과 유사하다

 

//XML 예
<pets>
	<pet>
    	<type>강아지</type><name>멍멍</name>
    </pet>
    <pet>
        <type>고양이</type><name>야옹</name>
    </pet>
    <pet>
        <type>토끼</type><name>깡총</name>
    </pet>
</pets>

JSON 과 XML 의 공통점

- 데이터를 저장하고 전달하기 위해 고안되었다.

- 기계 뿐만 아니라, 사람도 쉽게 읽을 수 있다.

- 계층적인 데이터 구조를 지니고 있다.

- 다양한 프로그래밍 언어에 의해 파싱될 수 있다.

 

JSON 과 XML 의 차이점

  JSON XML
종료 태그 사용 x o
구문길이 짧다 길다
읽기/쓰기 속도 빠르다 느리다
네임스페이스 제공x 제공o
배열 사용가능 사용불가능
파싱 javascript 표준함수인 eval() 함수로 파싱 xml 파서로 파싱
데이터 표시 없음 제공
안전성 비교적 낮다 비교적 높다
인코딩 UTF-8 다양한 인코딩 형식 지원

 

'Web' 카테고리의 다른 글

JWT 란? (Json Web Token)  (0) 2021.05.12
REST API 정의, 사용 이유  (0) 2021.04.24
HTTPS - SSL / TLS  (0) 2021.02.17
Session, Cookie 에 관하여  (0) 2021.02.17
Web Socket  (0) 2021.01.18
Comments