
기존 다른 개인프로젝트를 진행할때 Pycharm + Django 를 활용하여 서버를 개발하였었는데, 당시 Pycharm 에서 Django 관련 자동완성 기능을 사용하려면 Propessional 등급을 사용해야 했기에 울며겨자먹기로 돈을 내고 사용했었다.
현재, 새로운 프로젝트를 진행하는 도중 서버 개발이 필요해서 또 다시 이렇게 해야하나 싶었는데 생각해보니 굳이 Django 를 고집해야할까? 싶어 찾아보니 FastAPI 가 요즘 트렌드라고 하기에 VSC + FastAPI 를 통해 서버를 개발해보려고 한다.
앞으로 Django, Pycharm 치워버리자 ...!!
가장 우선적으로 해야할 것은 VSC 를 설치하자.
https://code.visualstudio.com/ 를 접속하여 각 OS 에 맞는 프로그램을 다운로드 -> 이후 자신이 진행할 프로젝트의 폴더를 생성하고, 컴퓨터에 파이썬을 설치하자 pip3 --version 으로 확인

VSC 의 확장 메뉴를 클릭하여 Python, Pylance (Antigravity 쓰는경우 Pyright), Ruff, REST Client 등을 설치하고, 재실행한다.
재실행 후 맥북 기준 Command + Shift + P 를 누르고 Python: Select Interpreter 검색 뒤, .venv/bin/python 를 선택해준다.
이후 VSC 실행 -> 폴더 열기 -> 생성한 폴더 열기 -> VSC 내 터미널 실행 을 진행하고 다음을 입력한다.
python3 -m venv .venv # 가상환경 생성
source .venv/bin/activate # 가상환경 실행
# 만약 실행을 종료하고 싶으면 `deactivate` 를 입력한다.
이후 lint 검사를 위해 VSC 에서 CMD + , 를 눌러 python analysis type checking 을 검색 후 Python > Analysis: Type Checking Mode 에서 하단 off -> basic 으로 변경해준다.

이제 FastAPI 를 설치할 차례이다.
터미널에 다음을 입력하자.
현재는 가상환경에서 실행되고 있는 상태이므로 실제 환경에서는 설치되지 않는다.
pip install fastapi
pip install "uvicorn[standard]"
mkdir app
touch app/main.py
이후 아래의 코드를 main.py 에 등록해보자.
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def root():
return {"message": "hello"}
이제 코드가 완성되었으면 cmd + S 로 저장 후 uvicorn app.main:app --reload 를 실행 후 로컬페이지에 접속하면 다음과 같이 나온다.

Django는 정해진 구조 때문에 초반에 등장하는 구성 요소가 많은 반면 FastAPI는 파일 하나로도 API와 자동 문서까지 빠르게 띄울 수 있어 초기 설정이 더 가볍게 느껴진다. 또한 PyCharm Community 을 사용한다면 Django 기능이 제한적이라, 이 점에서도 FastAPI가 상대적으로 간편하게 느껴지는 것 같다.
아직은 모르겠지만, Postgres + 간단한 CRUD 정도만 경험해본 내 입장에서는 FastAPI로 API 서버를 만드는 게 더 맞을 수도 있겠다는 생각이 들어 조금 더 연습해보려 한다.