본문 바로가기
C.W.K.
Stream
Lesson 01 of 08 · published

네 포맷, 한 데이터 모델

~10 min · interop, comparison

Level 0평문
0 XP0/64 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete

네 문법 아래 같은 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 의 변환 도구를 쓰면 돼.

Code

같은 레코드 — JSON·json
{
  "name": "Pippa",
  "version": "1.0",
  "created_at": "2026-05-04T01:30:11+09:00",
  "vessels": ["claude", "codex", "gemini", "ollama"],
  "home": {
    "city": "Seoul",
    "timezone": "Asia/Seoul"
  }
}
같은 레코드 — YAML·yaml
name: Pippa
version: '1.0'
created_at: 2026-05-04T01:30:11+09:00
vessels:
  - claude
  - codex
  - gemini
  - ollama
home:
  city: Seoul
  timezone: Asia/Seoul
같은 레코드 — TOML·toml
name = "Pippa"
version = "1.0"
created_at = 2026-05-04T01:30:11+09:00
vessels = ["claude", "codex", "gemini", "ollama"]

[home]
city = "Seoul"
timezone = "Asia/Seoul"
같은 레코드 — YAML front matter 가진 Markdown·markdown
---
name: Pippa
version: '1.0'
created_at: 2026-05-04T01:30:11+09:00
vessels: [claude, codex, gemini, ollama]
home:
  city: Seoul
  timezone: Asia/Seoul
---

# Pippa

Four brains under one Claude-shaped skeleton.
The front matter above carries the structured data;
the body carries the prose.

External links

Exercise

관심 가는 작은 데이터 레코드를 하나 골라. 프로젝트 메타데이터든 팀 명단이든 관리 중인 config 든. 그걸 네 가지 형태로 다 손으로 써봐. 마지막 Markdown 은 본문까지 붙여도 되고. 그러고 나서 어느 쪽이 자연스럽게 손에 붙는지 봐. 그 감각이 앞으로 비슷한 모양을 만났을 때의 기본값이 돼.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.