Python의 마이크로 웹 프레임워크이다. 특별한 도구나 라이브러리가 필요없기 때문에 마이크로 프레임워크라고 부른다. 다양한 웹 엔진과 붙여서 쓸 수 있고 가볍다. 코드가 단순하고, 특히 API 서버를 만들 때 매우 편리하다. 관련된 확장 기능들이 많기 때문이다.
풀 스택 프레임워크인 Django와는 달리 마이크로 프레임워크라고 해서 보다 기능성이 떨어지는 것은 아니다.
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Python의 오픈 소스 웹 프레임워크이자 풀 스택 프레임워크이다. MTV(Model-Template-View) 패턴을 준수한다. 고도의 DB 기반 웹사이트를 작성하는 데 있어서 편리함을 제공하는 것이 장고의 주된 목표이다.
컴포넌트의 재사용성(Reusability), 플러그인화 가능성(Pluggablilty), 빠른 개발 등을 강조한다.
FastAPI는 API를 만들기 위한 파이썬 웹 프레임워크이다. FastAPI는 이름에 걸맞게 빠른 속도를 자랑한다.
API(Application Programing Interface)는 서비스의 요청과 응답에 대한 규칙을 의미하지만 보통 API라고 하면 이러한 요청과 응답을 처리하는 서비스(기능)를 의미한다.
파이썬 웹 프레임워크 중 가장 유명한 장고와 플라스크는 주로 웹 서비스를 만들때 사용한다. 하지만 FastAPI는 API를 만드는데 보다 집중한 프레임워크이다. FastAPI로 작성한 API는 리액트나 Vue.js, Svelte와 같은 Frontend 웹 프레임워크에서 사용할 수 있고 안드로이드나 아이폰 앱에서도 사용할 수 있다. 만약 장고나 플라스크로 웹 서비스를 만들었다면 이에 대응하는 안드로이드나 아이폰 앱을 위한 API 개발을 따로 해야 하지만 FastAPI는 한번 만든 API를 여러 클라이언트에서 변경없이 사용할 수 있다.
pip install fastapi
from fastapi import FastAPI
app = FastAPI()
@app.get('/')
def hello():
return 'hello'
점프 투 FastAPI: https://wikidocs.net/book/8531