Computer Science
XML, JSON, YAML이란?
쵸키
2023. 1. 13. 21:17
XML - 안정성!
<?xml version="1.0"?>
<CAT>
<NAME>Izzy</NAME>
<BREED>Siamese</BREED>
<AGE>6</AGE>
<ALTERED>yes</ALTERED>
<DECLAWED>no</DECLAWED>
<LICENSE>Izz138bod</LICENSE>
<OWNER>Colin Wilcox</OWNER>
</CAT>
- 정보를 서버와 클라이언트 사이에서 주고 받을 때 사용된다.
- <tag/></tag>와 같은 형태로 표현되며 엔터와 탭으로 indenting이 된 형태를 가진다.
- XML minifie 를 사용하면 엔터와 탭을 제거하고 한줄로 표현된다. 여는태그와 닫는 태그를 사용하기 때문에 정보를 읽는데 문제는 없다.
- XML formatter를 사용하면 다시 한줄로 indenting이 된다.
- XML은 열고 닫는 태그가 있기 때문에 HTML 작성 시 일부 오타가 들어가도 읽을 수 있다.
- XML XSD를 사용하면 스키마를 사용하여 문법을 검증할 수 있다.
그러나 XML은 같은 태그를 두 번 입력해야 하고 indenting이 된 형태도 가독성이 떨어진다. 그래서 나온 것이 JSON이다.
JSON - 가벼움!
{
"newlines_sample": "number one line\\n\\nsecond line\\n\\nlast line\\n"
}
- 자바스크립트 객체 형태로 정보를 표현한다.
- 간결하고 작성하기 쉽기 때문에 많이 사용된다.
- 문법 오류에 취약하다. 콤마 하나가 잘못되어도 문서 전체를 해석할 수 없다.
YAML - 사용자 편의!
newlines_sample: |
number one line
second line
last line
- 데이터를 한줄로 보내는 것이아니라, 사람이 보고 작성하는데 목적을 둔다.
- 줄바꿈과 태그가 필수 요소이다.
- 상속을 사용하여 여러 데이터를 효율적으로 작성할 수 있다.
- 사용자의 편의에 집중하기 때문에 도커 컴포즈나 스프링등에 주로 사용된다.
이 세형식은 필요에 따라 사용된다.