XML, JSON, YAML

 공통점

- 데이터 표현 방식

- 텍스트 형식 직렬화 : 사람이 쉽게 읽을 수 있는 형태로 직렬화

  간단히 말하자면 사람이 정보 읽기 쉬운 형태

(직렬화 개념은 구글링해서 알아보자..!)

 

이제 차이점을 알아보자!


• XML 

<?xml version="1.0" encoding="UTF-8"?>
<!--주석 달기-->
<dog>
  <name>깜이</name>
  <family>미니핀</family>
  <age>12</age>
  <hobby>
    <element>산책</element>
    <element>간식먹기</element>
  </hobby>
  <weight>5.8</weight>
</dog>

- 태그를 사용 -> <name></name> name을 두 번 써야해서 작성하기 불편함

- 가독성도 그닥..

- 어느정도 오타 허용 -> 태그가 있기 때문에 오타가 나더라도 해당 태그 부분 제외하고 읽을 수 있음

- 주석 달기 가능


• JSON

{
  "name" : "깜이",
  "family" : "미니핀",
  "age" : 12,
  "hobby" : ["산책", "간식먹기"],
  "weight" : 5.8
}

- javascript의 객체 표현방식

- 문법 오류에 취약 -> , 하나만 안써도 전체 문서를 읽을 수 없게 됨

- "key" : value 형식으로 작성

- 모든 프로그래밍 언어에서 JSON 지원

- 주석 작성할 수 없음 


• YAML

dog:
  name : 깜이
  family : 미니핀
  age : 12
  hobby : 
   - 산책
   - 간식먹기
  weight : 5.8

- 사람이 보기 좋게 작성하는게 목적

- 개행, 공백으로 블록을 인식함

- 줄바꿈들여쓰기가 필수 -> XML, JSON에서 줄바꿈과 태그는 가독성을 위한 것이지 필수는 아님

- 주석(#), 상속 사용 가능


가독성

YAML > JSON > XML

JSON과 XML 비교

안전성이 중요하다! -> XML

간결함이 중요하다! -> JSON

사용자 편의성이 중요하다! -> JSON

 

'WEB' 카테고리의 다른 글

Rest API, RESTFUL API  (0) 2023.05.06
쿠키 vs 세션 vs 웹 스토리지  (0) 2023.05.05
MPA/SPA  (0) 2023.04.23
CSR/SSR  (0) 2023.04.18
Interface  (0) 2023.04.18