📚 Markdown(.md)과 JSON(.json) 완벽 가이드
🎯 학습 목표
- Markdown과 JSON의 기본 개념 이해
- 각 형식의 문법과 작성법 습득
- AI 명령어 및 설명 작성 시 효과적인 활용법 학습
- 실무에서의 응용 사례 파악
📝 Markdown(.md) 완벽 가이드
1. Markdown이란?
Markdown은 일반 텍스트 기반의 경량 마크업 언어입니다. 읽고 쓰기 쉬운 형식으로 작성된 문서를 HTML 등의 다른 형식으로 변환할 수 있습니다.
💡 왜 중요한가? AI에게 명령할 때 Markdown 형식으로 구조화하면 더 명확하게 의도를 전달할 수 있으며, 많은 AI 도구들이 Markdown 형식의 입출력을 지원합니다.
2. Markdown 기본 문법
제목 (Headers)
# 제목 1 (H1)
## 제목 2 (H2)
### 제목 3 (H3)
#### 제목 4 (H4)
##### 제목 5 (H5)
###### 제목 6 (H6)
강조 (Emphasis)
*이탤릭체* 또는 _이탤릭체_
**볼드체** 또는 __볼드체__
~~취소선~~
***볼드 이탤릭***
목록 (Lists)
순서 없는 목록:
- 항목 1
- 항목 2
- 하위 항목 2.1
- 하위 항목 2.2
* 별표 사용 가능
+ 플러스 사용 가능
순서 있는 목록:
1. 첫 번째
2. 두 번째
3. 세 번째
링크 (Links)
[링크 텍스트](https://www.example.com)
[참조 링크][ref]
[ref]: https://www.example.com "참조 링크 제목"
이미지 (Images)


코드 (Code)
인라인 코드: `console.log('Hello')`
코드 블록:
```javascript
function greeting() {
console.log('Hello, World!');
}
### 인용구 (Blockquotes)
```markdown
> 이것은 인용구입니다.
> 여러 줄로 작성할 수 있습니다.
>
> > 중첩된 인용구도 가능합니다.
수평선 (Horizontal Rule)
---
***
___
표 (Tables)
| 헤더1 | 헤더2 | 헤더3 |
|-------|-------|-------|
| 내용1 | 내용2 | 내용3 |
| 내용4 | 내용5 | 내용6 |
정렬:
| 왼쪽 정렬 | 중앙 정렬 | 오른쪽 정렬 |
|:---------|:--------:|-----------:|
| 내용 | 내용 | 내용 |
3. AI 명령어 작성 시 Markdown 활용법
구조화된 프롬프트 작성
# 요청사항
다음 조건에 맞는 코드를 작성해주세요.
## 입력
- 데이터 타입: JSON
- 필드: name, age, email
## 출력
- 형식: 정렬된 리스트
- 정렬 기준: age (내림차순)
## 제약사항
- Python 사용
- pandas 라이브러리 활용
단계별 지시사항
## 작업 순서
1. **데이터 수집**
- API에서 사용자 정보 가져오기
- 형식: JSON
2. **데이터 처리**
- 중복 제거
- 유효성 검사
3. **결과 저장**
- CSV 파일로 내보내기
예제와 설명
### 입력 예제
```json
{
"user": "홍길동",
"age": 30
}
기대 출력
{
"user": "홍길동",
"age": 30,
"status": "verified"
}
참고: status 필드는 자동으로 추가되어야 합니다.
---
## 📊 JSON(.json) 완벽 가이드
### 1. JSON이란?
JSON (JavaScript Object Notation)은 경량의 데이터 교환 형식입니다. 사람이 읽고 쓰기 쉽고, 기계가 파싱하고 생성하기도 쉬운 텍스트 형식입니다.
> **💡 왜 중요한가?**
AI API와 통신할 때, 설정 파일을 작성할 때, 구조화된 데이터를 전달할 때 JSON이 표준으로 사용됩니다. AI에게 복잡한 데이터 구조를 명확하게 전달하는 데 필수적입니다.
### 2. JSON 기본 문법
### 데이터 타입
```json
{
"문자열": "Hello, World!",
"숫자": 42,
"부동소수점": 3.14,
"불린": true,
"null값": null,
"배열": [1, 2, 3, 4, 5],
"객체": {
"키": "값"
}
}
객체 (Object)
{
"이름": "홍길동",
"나이": 30,
"직업": "개발자",
"주소": {
"도시": "서울",
"구": "강남구"
}
}
배열 (Array)
{
"과일": ["사과", "바나나", "오렌지"],
"숫자": [1, 2, 3, 4, 5],
"혼합": [1, "문자열", true, null, {"키": "값"}]
}
중첩 구조
{
"회사": {
"이름": "테크컴퍼니",
"직원": [
{
"이름": "김철수",
"부서": "개발",
"프로젝트": ["프로젝트A", "프로젝트B"]
},
{
"이름": "이영희",
"부서": "디자인",
"프로젝트": ["프로젝트C"]
}
]
}
}
3. JSON 작성 규칙
- 키는 반드시 큰따옴표로 감싸야 함:
{"키": "값"}✅{키: "값"}❌ - 문자열은 큰따옴표 사용:
"문자열"✅'문자열'❌ - 마지막 항목 뒤에 쉼표 없음:
{"a": 1, "b": 2}✅{"a": 1, "b": 2,}❌ - 주석 불가: JSON은 주석을 지원하지 않습니다
- 중괄호 {}는 객체, 대괄호 []는 배열
4. AI 명령어 작성 시 JSON 활용법
API 요청 구조 정의
{
"model": "gpt-4",
"messages": [
{
"role": "system",
"content": "당신은 친절한 AI 어시스턴트입니다."
},
{
"role": "user",
"content": "안녕하세요!"
}
],
"temperature": 0.7,
"max_tokens": 1000
}
설정 파일 작성
{
"ai_config": {
"provider": "openai",
"model": "gpt-4",
"settings": {
"temperature": 0.8,
"top_p": 0.9,
"frequency_penalty": 0.5
},
"system_prompt": "전문적이고 정확한 답변을 제공하세요.",
"max_retries": 3,
"timeout": 30
}
}
데이터 구조 명세
{
"instruction": "다음 형식으로 데이터를 반환해주세요",
"format": {
"user": {
"id": "문자열",
"name": "문자열",
"email": "이메일 형식",
"preferences": {
"language": "ko|en|ja",
"notifications": "boolean"
},
"created_at": "ISO 8601 날짜"
}
},
"example": {
"user": {
"id": "user_123",
"name": "홍길동",
"email": "hong@example.com",
"preferences": {
"language": "ko",
"notifications": true
},
"created_at": "2026-02-25T19:24:00Z"
}
}
}
프롬프트 템플릿
{
"task": "코드 생성",
"context": {
"language": "Python",
"framework": "FastAPI",
"purpose": "REST API 엔드포인트 생성"
},
"requirements": [
"사용자 인증 포함",
"데이터 유효성 검사",
"에러 핸들링"
],
"constraints": [
"최대 100줄 이내",
"타입 힌트 사용",
"docstring 포함"
],
"output_format": "코드 블록"
}
🔄 Markdown과 JSON의 결합 활용
1. 문서 내 JSON 예제 포함
# API 사용 가이드
## 요청 형식
다음과 같은 JSON 구조로 요청을 보내세요:
```json
{
"query": "검색어",
"filters": {
"date": "2026-02-25",
"category": "tech"
}
}
응답 예제
{
"status": "success",
"data": [
{"id": 1, "title": "제목1"},
{"id": 2, "title": "제목2"}
]
}
### 2. 구조화된 AI 프롬프트
```markdown
# 작업 지시
## 목표
사용자 데이터를 처리하는 함수 작성
## 입력 데이터 형식
```json
{
"users": [
{"name": "홍길동", "age": 30, "city": "서울"},
{"name": "김영희", "age": 25, "city": "부산"}
]
}
요구사항
- 필터링: 나이가 25세 이상인 사용자만 선택
- 정렬: 이름 순으로 정렬
- 출력: JSON 형식으로 반환
기대 출력
{
"filtered_users": [
{"name": "김영희", "age": 25, "city": "부산"},
{"name": "홍길동", "age": 30, "city": "서울"}
],
"count": 2
}
---
## 💼 실전 활용 사례
### 사례 1: AI 챗봇 설정 문서
```markdown
# 챗봇 설정 가이드
## 기본 설정
```json
{
"chatbot": {
"name": "도우미봇",
"personality": "친근하고 전문적",
"language": "ko",
"response_style": {
"tone": "informal",
"length": "concise",
"emoji_usage": true
}
}
}
대화 시나리오
인사말
- 사용자: “안녕하세요”
- 봇: “안녕하세요! 무엇을 도와드릴까요? 😊”
문의 처리
{
"intent": "product_inquiry",
"response_template": "말씀하신 {product}에 대해 안내드리겠습니다.",
"follow_up": ["추가 질문이 있으신가요?", "다른 제품도 궁금하신가요?"]
}
### 사례 2: 데이터 처리 파이프라인 문서
```markdown
# 데이터 처리 파이프라인
## 단계별 프로세스
### 1단계: 데이터 수집
```json
{
"source": "api",
"endpoint": "https://api.example.com/data",
"method": "GET",
"headers": {
"Authorization": "Bearer {token}",
"Content-Type": "application/json"
}
}
2단계: 데이터 변환
- 날짜 형식 표준화
- 결측치 처리
- 데이터 타입 변환
3단계: 데이터 저장
{
"destination": "database",
"table": "processed_data",
"schema": {
"id": "integer",
"name": "string",
"created_at": "timestamp"
}
}
### 사례 3: 프로젝트 설정 파일
```json
{
"project": {
"name": "AI 콘텐츠 생성기",
"version": "1.0.0",
"description": "자동으로 블로그 콘텐츠를 생성하는 AI 도구"
},
"ai_settings": {
"model": "gpt-4",
"temperature": 0.7,
"max_tokens": 2000,
"system_prompt": "당신은 전문 콘텐츠 작가입니다. SEO 최적화된 글을 작성하세요."
},
"content_guidelines": {
"tone": "전문적이면서 친근함",
"target_audience": "20-40대 직장인",
"keywords": ["생산성", "효율성", "자동화"],
"structure": {
"introduction": "150-200자",
"main_content": "1000-1500자",
"conclusion": "100-150자"
}
},
"output_format": {
"type": "markdown",
"include_metadata": true,
"image_placeholder": true
}
}
🎓 학습 팁 및 모범 사례
Markdown 작성 팁
- 계층 구조 명확히: 제목 레벨을 일관성 있게 사용하세요
- 가독성 우선: 적절한 공백과 줄바꿈으로 읽기 쉽게 작성하세요
- 코드 블록 활용: 기술적 내용은 코드 블록으로 명확히 표시하세요
- 링크 정리: 참조 스타일 링크로 문서 하단에 모아두면 관리가 쉽습니다
JSON 작성 팁
- 들여쓰기 일관성: 2칸 또는 4칸 들여쓰기를 일관되게 사용하세요
- 검증 도구 활용: JSONLint 같은 도구로 문법 오류를 확인하세요
- 스키마 정의: 복잡한 구조는 스키마를 먼저 설계하세요
- 네이밍 컨벤션: camelCase 또는 snake_case를 일관되게 사용하세요
AI와의 소통 시 주의사항
- 명확한 구조: Markdown 제목으로 섹션을 명확히 구분하세요
- 예제 제공: 입력/출력 예제를 JSON으로 구체적으로 제시하세요
- 제약사항 명시: 불릿 포인트로 제약조건을 명확히 나열하세요
- 단계별 지시: 번호 매긴 리스트로 순서를 명확히 하세요
🔧 유용한 도구 및 리소스
Markdown 도구
- 편집기: Typora, Mark Text, VS Code (Markdown Preview Enhanced)
- 온라인 에디터: StackEdit, Dillinger
- 변환 도구: Pandoc (Markdown ↔ 다양한 형식)
JSON 도구
- 검증: JSONLint, JSON Formatter
- 편집기: VS Code (JSON 자동완성 지원)
- 스키마: JSON Schema Validator
- 변환: CSV to JSON, XML to JSON 변환기
학습 리소스
- Markdown 가이드: https://www.markdownguide.org/
- JSON 공식 문서: https://www.json.org/
- 연습 사이트: Markdown Tutorial, JSON Tutorial
✅ 체크리스트
Markdown 마스터 체크리스트
- 기본 문법 (제목, 강조, 목록) 익히기
- 링크와 이미지 삽입 연습하기
- 코드 블록과 인용구 활용하기
- 표 작성 연습하기
- 실제 문서 작성해보기
JSON 마스터 체크리스트
- 기본 데이터 타입 이해하기
- 객체와 배열 구조 익히기
- 중첩 구조 작성 연습하기
- 실제 API 응답 분석해보기
- 설정 파일 작성해보기
AI 활용 체크리스트
- Markdown으로 구조화된 프롬프트 작성하기
- JSON으로 데이터 구조 명시하기
- 예제 입출력 포함하여 요청하기
- 단계별 지시사항 작성하기
- 실제 프로젝트에 적용하기
🎯 마무리 Markdown과 JSON은 AI와 효과적으로 소통하기 위한 필수 도구입니다. Markdown으로 명확한 구조를 만들고, JSON으로 정확한 데이터를 전달하면 AI로부터 원하는 결과를 얻을 확률이 크게 높아집니다. 이 가이드를 참고하여 실습하고, 실제 프로젝트에 적용해보세요!