네 문법 아래 같은 6 타입
JSON 도 YAML 도 TOML 도 결국 같은 데이터 모델로 떨어져. string, number, boolean, null, list, map. Markdown 만 성격이 좀 달라. 서식 있는 글을 렌더링하는 문서 포맷이니까. 대신 앞의 셋 중 하나를 쓴 front matter 로 구조화된 데이터를 실어 나르지. 한 번 이렇게 보고 나면 넷이 한 언어의 방언처럼 느껴져.
빠른 비교 — 같은 데이터, 네 형태
아래에 같은 레코드를 네 가지로 적어놨어. 글자 수 대비 구두점은 JSON 이 제일 많고 YAML 이 제일 적어. TOML 은 그 중간쯤이고, Markdown 은 구조화된 front matter 를 얹고 그 아래에 본문을 두는 모양이야.
각각이 가장 잘하는 거
- Markdown — 사람이 쓴 글에 가벼운 메타데이터를 얹을 때. README, 블로그 글, 문서, 일지.
- JSON — 기계끼리 주고받을 때. API, 로그, 메시지 큐, 패키지 매니페스트.
- YAML — 사람이 쓰는데 중첩이 깊을 때. Kubernetes, CI, Ansible.
- TOML — 사람이 쓰고 중첩은 얕으면서 뜻이 분명해야 할 때. Python/Rust 매니페스트, 정적 사이트 생성기.
원칙: 포맷 선택은 능력 문제가 아니라 쓰는 사람 경험의 문제야. 어떤 조합이든 요즘은 다 파서가 있어. '이걸 제일 자주 만지는 사람이 누구고, 무슨 도구로 여는가' 를 기준으로 골라. 오갈 때와 저장할 때 포맷이 달라야 한다면 다음 lesson 의 변환 도구를 쓰면 돼.