
Fast API는 API를 만들기 위한 파이썬 웹 프레임워크이다.
FastAPI와 다른 파이썬 프레임워크의 차이점
파이썬 웹 프레임워크에는 장고와 플라스크가 가장 유명하다.
이 둘은 주로 웹 서비스를 만들 때 사용한다면
Fast API는 API 개발에 특화된 프레임 워크이다.
FastAPI의 장점
1) FastAP는 한 번 만든 API를 여러 클라이언트에서 변경없이 사용할 수 있다.
왜냐하면 FastAPI는 HTML을 렌더링하지 않고,
JSON 형태의 응답(API)을 반환하는데 최적화 되어 있기 때문이다.
Django나 플라스크로도 API를 만들수는 있지만, FastAPI가 더 유리하다는 의미이다.
Django의 MVT(Model View Template) 패턴과 DRF(Django REST Framework) 방식
Django의 대표적인 MVT 패턴은 서버에서 UI까지 다 처리하는 방식이다.
RestAPI 통신 없이 백엔드에서 HTML 페이지를 직접 렌더링해서 브라우저로 보내는 구조이다.
따라서 웹 전용으로 설계가 되어 있기 때문에
모바일 앱이나 외부 클라이언트에서는 같은 데이터를 재사용하기 어렵다.
만약 Django에서 API 통신을 하고 싶다면 DRF 방식으로
프론트와 분리를 할 수 있게 된다.
2) Fast API는 속도가 빠르다.
Fast API는 내부적으로 Starlette 이라는 비동기 프레임워크를 사용한다.
그래서 파이썬 웹 프레임워크 중 가장 빠르다고 알려져 있고,
NodeJS 및 GO와 대등할 정도의 높은 성능을 보여준다
- Starlette - 비동기 ASGI 프레임워크 (https://www.starlette.io/)
3) 개발 속도 또한 빠르다.
API 개발은 보통
입출력 스펙 정의 >> 기능 구현 >> 테스트
순서로 진행된다.
FastAPI는 이 과정 중에서 입출력 정의와 검증을 빠르고 안전하게 처리할 수 있다.
그 이유는 Pydantic 덕분이다.
Pydantic은 입력값과 출력값의 타입을 명확하게 정의하고,
요청 데이터가 잘못된 경우 자동으로 검증 에러를 반환해준다.
덕분에 데이터 유효성 검사를 직접 구현할 필요가 거의 없다.
또한 FastAPI는 작성한 API를 기반으로 자동 문서화 기능을 제공한다.
RestAPI 개발을 해봤다면 Swagger나 Postman을 사용해봤을 것이다.
그 중에서 Swagger로 API 문서가 생성되기 때문에 쉽게 테스트 할 수 있다는 장점이 있다.
다음 글에서는 FastAPI 실습으로 돌아오겠다.
참고문헌 : 점프투 FastAPI
'공부기록 > Web' 카테고리의 다른 글
| REST API와 GraphQL이란 무엇일까? (1) | 2025.11.30 |
|---|---|
| [ FastAPI ] 1. MAC에서 FastAPI 설치하고 간단한 서버 실행하기 (0) | 2025.11.12 |
| SOP(동일 출처 정책)과 CORS(교차 출처 리소스 공유)란 무엇일까? (0) | 2025.11.10 |