[Markup Language] XML/JSON/YAML 비교
by Choi HyeSun
마크업언어란?
- [Markup Language] 마크업 언어란? LINK
XML vs JSON vs YAML
XML | JSON | YAML | |
---|---|---|---|
뜻 | eXtensible Markup Language | JavaScript Object Notation | YAML Ain’t Markup Language → 기존 Yet Another Markup Language 문서 마크업이 아닌 데이터 중심에 있다는 것을 보여주기 위해 뜻을 변경함 |
사이트 | https://www.json.org/ | https://yaml.org/ | |
유효성 | https://www.xmlvalidation.com/ | https://jsonlint.com/ | http://www.yamllint.com/ |
구조 정의 |
(HTML과 같은) 태그 사용 | { } 중괄호 사용 | 들여쓰기 사용 (공백 수로 블록 구분) |
확장자 | .xml | .json | .yaml |
장점 1 | - 유연함 | - 간결과 집중 | - 한글같은 유니코드를 그대로 사용할 수 있음 |
장점 2 | - 작성하기 쉬움 | - java script에서 쉽게 사용 가능 | - 주석 사용 가능 |
장점 3 | - 사람이 이해하기 쉬움 | - 속도가 xml보다 빠름 | - 문자열을 ““로 감싸지 않아도 됨 |
장점 4 | - 호환성이 좋음 | - 툴 지원이 많음 | |
장점 5 | - 제공되는 기능이 많음 | ||
단점 1 | - 장황함 | - data type 제공이 적음 | - 공백을 잘 맞춰줘야 함 |
단점 2 | - 속도가 느림 | - 명칭 공간을 지원하지 않음 | - 한 줄로 작성 불가 |
단점 3 | - 보안 취약성(BL / EE) | - 그래픽 파일이나 문서 등 바이너리 코딩된 파일은 XML이 적합 | - 사용처가 json에 비해 적음 |
단점 4 | - 주석 사용 불가 | - trace시 구조를 파악하기 어려움 | |
사용처 | XML 기반 데이터 베이스 모두 XML로 작성한 앱 로직 등 |
일반적으로 API 만들 때 | 일반적으로 설정 파일을 작성할 때 |
출처
Subscribe via RSS