← 블로그

학생을 위한 마크다운 활용법

·6 min read
마크다운학생공부노트

학생을 위한 마크다운 활용법

대학교에서 리포트를 제출하거나, 공부한 내용을 정리하거나, 팀 프로젝트 문서를 작성할 때 어떤 도구를 사용하시나요? Word로 하나하나 서식을 맞추느라 시간을 낭비하고 있다면, 마크다운을 배워보는 것을 추천합니다. 한 번 익히면 평생 써먹을 수 있는 강력한 도구입니다.

학생이 마크다운을 배워야 하는 이유

1. 내용에 집중할 수 있다

리포트를 쓸 때 폰트를 고르고, 줄 간격을 조절하고, 들여쓰기를 맞추느라 시간을 쓴 적이 있을 것입니다. 마크다운에서는 이런 고민이 없습니다. 내용만 집중해서 쓰고, 서식은 나중에 한 번에 적용하면 됩니다.

2. 취업 후에도 계속 쓸 수 있다

IT 업계에서 마크다운은 사실상 표준입니다. GitHub, Notion, Slack, Jira, Confluence 등 거의 모든 협업 도구에서 마크다운을 지원합니다. 학생 때부터 익혀두면 취업 후 바로 활용할 수 있습니다.

3. 버전 관리가 가능하다

리포트 파일명이 이렇게 된 적 있으신가요?

리포트_최종.docx
리포트_최종_수정.docx
리포트_최종_수정_진짜최종.docx
리포트_최종_수정_진짜최종_v2.docx

마크다운 파일은 Git으로 체계적으로 버전 관리할 수 있습니다. 언제, 무엇을 변경했는지 완벽하게 추적됩니다.

4. 무료다

Microsoft Office 구독료가 부담되는 학생에게 마크다운은 완전 무료 대안입니다. VS Code(무료)만 있으면 바로 시작할 수 있습니다.

노트 정리에 마크다운 활용하기

수업 노트 구조

# 운영체제 - 5주차

## 프로세스 관리

### 프로세스란?
실행 중인 프로그램의 인스턴스를 프로세스라고 한다.

### 프로세스의 상태
- **생성 (New)**: 프로세스가 만들어진 상태
- **준비 (Ready)**: CPU 할당을 기다리는 상태
- **실행 (Running)**: CPU에서 실행 중인 상태
- **대기 (Waiting)**: I/O 완료를 기다리는 상태
- **종료 (Terminated)**: 실행이 끝난 상태

### 핵심 개념
> 프로세스와 스레드의 차이:
> 프로세스는 독립적인 메모리 공간을 가지지만,
> 스레드는 같은 프로세스 내에서 메모리를 공유한다.

### 시험 대비 포인트
- [ ] PCB(Process Control Block)의 구성 요소
- [ ] 컨텍스트 스위칭 과정
- [ ] 프로세스 스케줄링 알고리즘 비교

코넬 노트법을 마크다운으로

# 자료구조 - 이진 탐색 트리

| 핵심 키워드 | 내용 |
|:----------:|------|
| BST 정의 | 왼쪽 자식 < 부모 < 오른쪽 자식을 만족하는 트리 |
| 탐색 시간 | 평균 O(log n), 최악 O(n) |
| 삽입 과정 | 루트부터 비교하며 올바른 위치를 찾아 삽입 |
| 삭제 유형 | 리프 노드, 자식 1개, 자식 2개 - 3가지 경우 |

## 요약
이진 탐색 트리는 정렬된 데이터를 효율적으로
탐색하기 위한 자료구조이다. 균형이 유지되면
O(log n) 성능을 보장하지만, 편향되면 O(n)까지
떨어질 수 있다. 이를 해결하기 위해 AVL 트리나
Red-Black 트리를 사용한다.

과제 작성에 마크다운 활용하기

프로그래밍 과제 보고서

마크다운의 코드 블록은 프로그래밍 과제 보고서에 딱 맞습니다.

# 알고리즘 과제 #3: 정렬 알고리즘 비교

## 1. 구현

### 퀵 정렬

```python
def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quick_sort(left) + middle + quick_sort(right)
```

### 병합 정렬

```python
def merge_sort(arr):
    if len(arr) <= 1:
        return arr
    mid = len(arr) // 2
    left = merge_sort(arr[:mid])
    right = merge_sort(arr[mid:])
    return merge(left, right)
```

## 2. 성능 비교

| 알고리즘 | 최선 | 평균 | 최악 | 공간 복잡도 |
|---------|------|------|------|-----------|
| 퀵 정렬 | O(n log n) | O(n log n) | O(n²) | O(log n) |
| 병합 정렬 | O(n log n) | O(n log n) | O(n log n) | O(n) |

## 3. 결론
평균적으로 두 알고리즘 모두 O(n log n)의 시간 복잡도를 가지지만...

이렇게 작성한 마크다운을 printmd로 PDF로 변환하면 깔끔한 과제 보고서가 완성됩니다.

LaTeX 수식 작성

이공계 학생이라면 수학 공식을 많이 다룰 텐데, 마크다운은 LaTeX 문법으로 수학 공식을 지원합니다.

인라인 수식

피타고라스 정리에 의하면 $a^2 + b^2 = c^2$ 이다.

원의 넓이는 $A = \pi r^2$ 으로 구한다.

블록 수식

이차방정식의 근의 공식:

$$
x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
$$

정규분포의 확률밀도함수:

$$
f(x) = \frac{1}{\sigma\sqrt{2\pi}} e^{-\frac{(x-\mu)^2}{2\sigma^2}}
$$

행렬 곱:

$$
\begin{pmatrix}
a & b \\
c & d
\end{pmatrix}
\begin{pmatrix}
e \\
f
\end{pmatrix}
=
\begin{pmatrix}
ae + bf \\
ce + df
\end{pmatrix}
$$

자주 쓰는 LaTeX 문법

표현 LaTeX 코드 결과
분수 \frac{a}{b} a/b
제곱근 \sqrt{x} 루트 x
합 기호 \sum_{i=1}^{n} 시그마
적분 \int_{a}^{b} 인테그랄
그리스 문자 \alpha, \beta, \gamma 알파, 베타, 감마
화살표 \rightarrow 오른쪽 화살표

학습 자료 체계적으로 관리하기

폴더 구조 제안

학습자료/
├── 1학년-1학기/
│   ├── 프로그래밍-기초/
│   │   ├── week01-변수와-타입.md
│   │   ├── week02-조건문.md
│   │   └── week03-반복문.md
│   ├── 미적분학/
│   │   ├── week01-극한.md
│   │   └── week02-미분.md
│   └── 시험준비/
│       ├── 중간고사-요약.md
│       └── 기말고사-요약.md
├── 1학년-2학기/
└── README.md  ← 전체 목차/색인

README.md로 목차 관리

# 학습 자료 목록

## 1학년 1학기

### 프로그래밍 기초
- [1주차: 변수와 타입](./1학년-1학기/프로그래밍-기초/week01-변수와-타입.md)
- [2주차: 조건문](./1학년-1학기/프로그래밍-기초/week02-조건문.md)

### 미적분학
- [1주차: 극한](./1학년-1학기/미적분학/week01-극한.md)

추천 도구

에디터

도구 특징 가격
VS Code 확장 기능 풍부, 개발자 친화적 무료
Obsidian 노트 간 연결(백링크), 그래프 뷰 개인 무료
Typora WYSIWYG 편집, 깔끔한 UI 유료 (약 $15)
Notion 올인원 작업 공간, 데이터베이스 학생 무료

학생에게 특히 추천하는 조합

  1. VS Code + 마크다운 확장: 코딩과 문서 작성을 한 곳에서
  2. Obsidian: 노트 정리와 지식 관리에 최적
  3. printmd: 마크다운을 과제 제출용 PDF로 변환할 때

Git으로 학습 자료 관리

# 저장소 초기화
git init study-notes
cd study-notes

# 오늘 노트 커밋
git add "1학년-1학기/프로그래밍-기초/week05-함수.md"
git commit -m "프로그래밍 기초 5주차 노트 추가"

# GitHub에 백업
git remote add origin https://github.com/username/study-notes.git
git push -u origin main

이렇게 하면 노트가 자동으로 백업되고, 어디서든 접근할 수 있습니다.

팀 프로젝트에서 활용하기

팀 프로젝트 문서도 마크다운으로 작성하면 좋습니다.

# 팀 프로젝트: 도서관 관리 시스템

## 팀원
| 이름 | 역할 | 담당 |
|------|------|------|
| 김철수 | 팀장 | 백엔드 API |
| 이영희 | 팀원 | 프론트엔드 |
| 박지민 | 팀원 | 데이터베이스 |

## 회의록
- [1차 회의 (3/5)](./meetings/meeting-01.md)
- [2차 회의 (3/12)](./meetings/meeting-02.md)

## 진행 상황
- [x] 요구사항 분석
- [x] DB 설계
- [ ] API 개발
- [ ] UI 구현
- [ ] 테스트

마무리

마크다운은 학생 때 배워두면 가장 효용이 큰 도구 중 하나입니다. 수업 노트부터 과제, 팀 프로젝트, 취업 준비까지 다양한 상황에서 활용할 수 있습니다. 특히 IT 분야로 진로를 계획하고 있다면, 마크다운은 선택이 아니라 필수입니다.

처음에는 기본 문법만 익히세요. 제목, 목록, 굵게, 코드 블록 정도만 알아도 충분합니다. 나머지는 필요할 때마다 찾아서 쓰면 자연스럽게 익숙해집니다. 과제 제출 시 printmd로 PDF 변환하면 깔끔한 보고서를 만들 수 있으니, 한 번 시도해보세요.

printmd로 마크다운을 PDF로 변환해보세요

printmd 시작하기