주요 API 개발 방식 4가지
저는 사이드프로젝트 할때 1인 개발자이므로 Outside-In(HTTP우선작성) 방식으로 하게 되는 것 같습니다.
다른 방식에는 무엇이 있는지 chatgpt에게 물어봤더니 다음과 같이 알려줬습니다.
Inside-Out(Router 스텁 우선),
Contract-First(OpenAPI YAML 우선작성),
Model-First(DB스키마, Pydantic모델 우선 작성)
당분간 맘에 드는, HTTP우선작성 방식의 숙달을 시도해보려 합니다.
| 접근 방식 | 핵심 아이디어 | 장점 | 단점 | 주로 사용하는 사람 |
|---|---|---|---|---|
| ① Outside-In (HTTP 우선) | 사용자 입장에서 API 호출부터 정의 (ex. .http, Postman) | - 실전 중심- 빠른 테스트 가능- 명세가 테스트 겸용 | - 내부 구조 설계가 늦어질 수 있음 | 1인 개발자, 스타트업 |
| ② Inside-Out (Router 스텁 우선) | FastAPI의 @router.get() 등 먼저 구현 후 테스트 | - Swagger 자동 생성- 구조적 일관성↑ | - 테스트/명세가 늦어짐 | FastAPI 경험자, 팀 기반 |
| ③ Contract-First (OpenAPI → 코드 생성) | 먼저 OpenAPI YAML 작성 후 코드 자동 생성 | - 팀 간 명세 공유 용이- 자동화와 문서화 탁월 | - 도구 학습 필요- 코드 유연성↓ | 기업, 팀 협업 환경 |
| ④ Model-First (데이터 구조 → API 구성) | DB 스키마 또는 Pydantic 모델 먼저 정의 | - 데이터 정합성 우선- 빠른 CRUD 설계 | - 외부 호출 관점이 부족 | 데이터 중심 서비스 |
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.
