[Markdown] 마크다운(Markdown) 개념과 사용 예시
개발자라면 GitHub와 Notion 같은 서비스를 자주 사용하게 되는데, 이들 플랫폼에서는 마크다운(Markdown)이 필수적으로 사용된다.
그래서 이번 글에서는 마크다운의 개념과 기본 사용법을 정리하려고 한다.
단, 뷰어에 따라 일부 기능이 다르게 동작할 수 있다.
예를 들어, GitHub, VS Code, Typora에서는 테이블 정렬이 적용되지만, 일부 마크다운 뷰어에서는 지원되지 않을 수도 있다.
이번 글에서는 마크다운의 기본 문법부터 실제 사용 예제까지 살펴보겠다.
마크다운(Markdown)이란?
경량 마크업 언어로, 간단한 문법을 사용해 텍스트를 구조화할 수 있는 문서 형식이다. HTML보다 가독성이 좋고, 코드 작성이 간편해 개발자들 사이에서 널리 사용된다. 주로 README 파일, 기술 문서, 블로그 포스트, 노트 정리 등에 활용된다.
마크다운 종류와 사용 예시
1. 제목(Header)
제목을 만들 때 # 기호를 사용하면 된다. #의 개수에 따라 제목의 크기가 달라진다.
# 제목 1
## 제목 2
### 제목 3
2. 목록(List)
① 순서 없는 목록
- - 또는 *을 사용하며, 순서 있는 목록은 숫자로 만든다.
- 들여쓰기를 하면 모양이 바뀐다.
* 하늘
* 땅
* 바다
+ 하늘
+ 땅
+ 바다
* 우주
- 하늘
- 땅
- 바다
② 순서 있는 목록
- 숫자를 기입하면 순서 있는 목록이 된다.
- 순서대로 알아서 숫자를 매긴다.
1. 첫 번째
2. 두 번째
3. 세 번째
③ 혼합 리스트
(1) 숫자 혼합 사용
1. 리스트 1번
1. 리스트 1-1번
2. 리스트 2번
3. 리스트 3번
1. 리스트 3-1번
2. 리스트 3-2번
(2) 순서 있는 리스트와 순서 없는 리스트를 조합
1. 하늘
* 구름
* 태양
+ 햇빛
2. 우주
- 별
- 행성
1. 달
3. 코드 블록(Code Block)
백틱(```) 세 개를 사용해 코드 블록을 만들 수 있다.
```python
print("Hello, Markdown!")
4. 강조(Emphasis)
- 굵게 표시하기: **텍스트**
- 기울임: *텍스트* 또는 _텍스트_
- 취소선: ~~
**굵은 글씨**
*기울어진 글씨*
~~취소선~~
***굵고 기울어진 글씨***
**~~굵은 취소선~~**
*~~기울어진 취소선~~*
5. 링크(Link)
링크는 [텍스트](URL) 형식으로 작성한다.
[Google 바로가기](https://www.google.com)
6. 이미지(Image)
이미지는  형식으로 작성한다.

7. 인용문(Blockquote)
> 기호를 사용해 인용문을 작성할 수 있다.
> 이것은 인용 문장이다.
>> 중첩된 인용도 가능하다.
>>> 세 번째 단계의 인용
8. 테이블(table)
- | 기호를 사용해 표를 만들 수 있으며, 헤더와 셀을 구분할 때 -(hyphen/dash) 기호를 3개 이상 사용해야 한다.
- :(colons) 기호를 사용하여 열 정렬을 조정할 수 있다.
- 가장 좌측과 우측 |(vertical bar) 기호는 생략 가능하다.
① 정렬 미적용
이름 | 나이 | 직업
------ | ---- | ------------
유재석 | 25 | 개발자
강호동 | 45 | 기획자
이효리 | 30 | 디자이너
② 정렬 적용
- :------ → 왼쪽 정렬
- :---: → 가운데 정렬
- ------: → 오른쪽 정렬
이름 | 나이 | 직업
:------ | :---: | ------:
유재석 | 25 | 개발자
강호동 | 45 | 기획자
이효리 | 30 | 디자이너
9. 수평선
- , *, _을 3개이상 작성한다.
단, -을 사용하는 경우 Header로 인식할 수 있으니 이전 라인은 비워두어야 한다.
---
이것은 수평선 위의 텍스트입니다.
---
***
이것은 별표를 사용한 수평선입니다.
***
___
이것은 밑줄을 사용한 수평선입니다.
___
10. 줄바꿈
<br>를 활용해서 줄바꿈을 할 수 있다.
엔터로 칸을 띄면 다음 행으로 넘어가게 된다.
안녕하세요 <br>
만나서 반가워요
11. Backslash Escapes
특수문자를 일반 문자로 표시하려면 앞에 \를 붙여 이스케이프 처리한다.
하지만, 일부 특수문자는 \\를 사용해야 정상적으로 표시되는 경우도 있다.
* 특수문자 출력안됨
- 특수문자 출력안됨
\* 특수문자 출력
\- 특수문자 출력
\*literal asterisks\*
\#hash mark\#
\[squre brackets\]