상세 컨텐츠

본문 제목

[나는리뷰어다] FastAPI 를 사용한 파이썬 웹개발 리뷰!

유용한 정보

by SangHoonE 2023. 4. 24. 10:42

본문

반응형

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

FastAPI 를 사용한 파이썬 웹개발

 

안녕하세요 상훈입니다. 
이번에 리뷰하게 된 도서의 제목은  [ FastAPI 를 사용한 파이썬 웹개발 ] 입니다.

주로 React.js, Vue.js 를 이용한 SPA 의 프론트엔드 개발을 하다가 우연히도 발견한 FastAPI 를 사용한 파이썬 웹개발 책이 리뷰어 리스트에 있길래 냉큼 신청하였습니다.

 

이 책의 첫번째 좋은 점!

일단 저는 Docker에 관심은 있었지만 최근 1년 이상 건드려본 기억이 없어서 어떻게 해야할지도 감이 없는 상태였습니다.
그런데 이 책에서 virtualenv (가상환경설정) 를 간단하게 설명해주어, 스스로 검색하여 찾아보고 가상환경을 세팅해주고, 이어서 도커 사용을 하였습니다.

그다음으로는 pip 관련 기초 명령어를 통해 설치 후 진행하게 되는데, 만약 설치가 안되어 있으시다면, 아래 링크를 통해 설치해주시길 바랍니다.

https://pip.pypa.io/en/stable/installation/

 

이하 자세한 내용이 있지만, 사이드프로젝트와 본업이라는 변명으로 계속 개발을 못하고있음에 부끄럽지만 전부 읽어보지 못하였습니다.

웹개발은 거기서 거기다! 라는 말을 예전에는 무슨 소리야? 라는 생각이 있었는데, html, php, java, vue.js, react.js ... 등등을 경험하면서 느낀 바는 진짜 유사하다는 것을 느꼈습니다.

페이지를 이동할때는 항상 % router % 관련된 메서드를 호출하고 parameter 를 넘겨주어 설정하더라구요.

파이썬 또한 비슷하게 사용하였습니다.

router = APIRouter()
@router.get('/') ...

마치 node.js 에서 사용하는것과 거의 동일하게 보였습니다!

요즘 웹개발 트렌드인지 모르겠지만, 상당히 유사하였으며 코드 자체가 수월하게 눈에 읽혔습니다.

 

오류처리

모든 웹어플리케이션을 비롯한 어플리케이션들은 필수적으로 오류처리를 해야합니다.

그 중에서 이 책에서는 404 not found 에 대한 내용에 대해 간략하게 서술해주어서 더 좋았습니다. 에러처리를 직접해주는 도서가 흔하지 안더라구요.

raise HTTPException(
    ....
)

이렇게 작성하게 되는데, 마치 자바에서 Interceptor - Error Exception 을 출력할 때의 모습과 유사했습니다.

 

Todo List 구현

그리고 위와 같은 여러 과정들을 거쳐 구현하게 된 Todo List!

 

놀랍게도 DB 를 만드는데 있어 *.py 를 사용하더라구요?

지금까지 모든 언어들을 접하면서 db 구성은 erd 통해서 ~ 어쩌구~ 저쩌구 작성했었는데, FastAPI의 방식인지 파이썬의 방식인지 모르겠지만 python 파일을 만들고 쓸지 전혀 예상하지 못하였습니다.

그리고 구현 후 swagger-ui 와 비슷하게 생긴 인터렉티브 문서를 통해 확인까지. 3박자가 고루 갖춰진 내용이었습니다.

 

덕분에 파이썬으로 웹개발을 해보는 귀한 경험을 해보았습니다.

이상입니다.

 

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

관련글 더보기

댓글 영역