FastAPI를 사용한 파이썬 웹개발 (저자: 압둘라지즈 압둘라지즈 아데시나)

FastAPI를 사용한 파이썬 웹개발 (저자: 압둘라지즈 압둘라지즈 아데시나)

파이썬 개발자를 위한 FastAPI 입문서

업무를 하던 중 사내 대상으로 모델을 서빙하는 API를 만들어야 했던 시기가 있었는데, FastAPI를 기반으로 만들게 되었다. FastAPI라는 도구도 처음이었거니와, API를 만든다는 것 자체가 처음이어서 상당한 기간 헤맸던 기억이 난다.

이번에 한빛미디어에서 출간한 “FastAPI를 사용한 파이썬 웹개발” 에서 밝힌 대상 독자는 “웹 API 구축에 관심 있는 파이썬 개발자” 이다. 책의 내용은 대부분 익숙하지만, FastAPI를 몰랐던 과거의 내가 읽었다면 얼마나 도움이 되었을지에 초점을 맞추어보았다.

FastAPI 한바퀴

책은 아래와 같이 FastAPI를 구성하는 기본적인 요소들을 다루고 있으며, 예제를 따라가면서 실습을 할 수 있는 구조로 되어 있다.

  • 라우팅 방법
  • Pydantic을 적용한 검증
  • Response, Error, Status
  • Template
  • 어플리케이션 설계
  • Database
  • 보안, 인증
  • 테스트
  • 배포

가장 간단한 To-do 어플리케이션을 개발하는 과정에서, 위의 요소들을 어떻게 활용하는지에 대한 예제가 짜임새 있게 구성되어 있다. 가장 참고하기 좋았던 부분은 FastAPI 가 비교적 개발하기 쉽고 유연한 도구지만, 프로젝트가 더 복잡해질 경우를 고려했을 때 어플리케이션을 어떻게 “구조화"하는 것이 좋은 방향인지, 라우트와 모델을 활용하여 설명한 챕터였다.

아쉬운 부분

이 책의 한계점 또는 아쉬운 부분을 짚어보면 여러가지가 있다.

  1. 이 책은 웹개발에 대한 개념을 깊이 있게 설명하지는 않는다. 따라서 파이썬 개발자이지만 다른 직군으로서 웹개발에 대한 지식이 없다면, 예제를 보아도 도움이 되지 않거나 이해가 되지 않을 것이다.

  2. 웹 어플리케이션을 만드는 것에 있어 빠질 수 없는 로깅에 대한 부분이 빠져있다. 개인적으로 FastAPI를 처음 사용할 때, 로깅의 best practice에 대한 정보를 찾기가 어려워서 시간을 많이 소요한 적이 있었는데, 이 책에서는 어떻게 다루었을지 궁금했었다. 로깅에 대한 내용이 없어 아쉬웠던 부분.

  3. 배포가 도커 이미지를 빌드하고 로컬 환경에서 실행하는 단계까지만 다루어져 있다. 가벼운 어플리케이션 예제라면 클라우드 무료 인스턴스를 활용한 배포까지도 다루었으면 어땠을까 하는 생각이 있다. (물론 필수인 부분은 아니지만)

이러한 점들을 놓고 봤을 때, 나 같은 데이터 직군의 파이썬 개발자가 처음 접하고 내용을 숙지하기에는 약간은 아쉬운 부분이 있다. 오히려 “웹 API개발 경험이 있지만 FastAPI는 처음 사용해보는 개발자”에게 적합하지 않을까?


한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.