백엔드 기초집: Python FastAPILESSON 01
백엔드와 API 서버의 역할
난이도초급
예상 시간35분
선수지식웹 개발 베이스와 Python 기초
1강. 백엔드와 API 서버의 역할
1. 이번 강의에서 해결할 문제
프론트엔드에 게임 점수를 배열로만 저장하면 새로고침과 다른 기기에서 기록이 사라집니다. 브라우저가 데이터를 요청하고 서버가 규칙을 검사한 뒤 데이터베이스에 저장하는 경계를 정합니다.
2. 학습 목표
3. 핵심 개념
백엔드는 클라이언트가 직접 신뢰해서는 안 되는 일을 맡습니다. 점수가 0 이상인지 검사하고, 로그인 사용자를 확인하며, 기록을 영구 저장하고, 여러 기록에서 랭킹을 계산합니다. API는 이 기능을 URL, HTTP 메서드, JSON 형식으로 공개한 계약입니다.
브라우저 ── HTTP/JSON ──> FastAPI ── SQL ──> 데이터베이스
↑ │ │
└──── 상태 코드 + JSON ───┴──── 조회 결과 ─────┘
4. 단계별 코드 예시
파일 경로: game-ranking-api/README.md
README.md
# Game Ranking API
## 핵심 리소스
- users: 계정과 역할
- records: 사용자의 게임 점수 기록
- rankings: 게임별 최고 점수 집계
## 요청 흐름
1. 클라이언트가 JSON 요청을 보낸다.
2. API가 입력과 인증을 검증한다.
3. 데이터베이스 트랜잭션을 수행한다.
4. 상태 코드와 JSON을 응답한다.
실행 위치: 프로젝트를 만들 상위 폴더
New-Item -ItemType Directory game-ranking-api
Set-Location game-ranking-api
git init
git status
5. 코드가 동작하는 이유
README는 아직 서버를 실행하지 않지만 리소스와 책임을 먼저 고정합니다. 이후 경로 이름과 데이터 모델이 바뀔 때 “이 코드가 어느 책임에 속하는가?”를 판단하는 기준이 됩니다.
6. 자주 하는 실수와 해결법
7. 직접 실습
8. 이해 점검 질문 3개
9. 핵심 요약
MINI QUIZ
0 / 2백엔드와 API 서버의 역할 미니 퀴즈
선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.
LESSON STATUS
1강. 백엔드와 API 서버의 역할 미완료 상태학습을 마쳤나요?
직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.