Python 웹 프레임워크 비교

둥그냥·2021년 8월 31일
0

공부 기록

목록 보기
9/10

Django

  • 4천여개의 장고패키지가 있음
  • 효율적이고 파워풀한 내부 패키지 기능
  • Model-Template-View 패턴
  • Dhango REST Framework (DRF)로 쉽게 RESTful API 구축
  • 강력한 보안
  • 고성능 사이트 대응으로 주로 대형기업이나 테크기업에서 사용

    코드량이 많아서 생산성이 떨어짐. 유연성이 떨어짐, Django ORM을 사용해야 함
    필요한 모든것이 갖추져있어서 다른 프레이어크를 생각하지 않고 이것 하나만으로 가능함

Flask

  • 마이크로 프레임워크로 경량 프레임워크
  • 유연함, 심플, 쉬운 확장
  • 쉬운 학습 및 러닝 커브 낮음
  • 높은 생산성
  • 최소한의 오버헤드가 없음

    내장된 DB Framework가 없어서 주로 오픈소스라이브러리인 Sqlalchemy를 사용함

FaskAPI

  • 비동기 IO를 사용하여 빠른 웹 어플리케이션을 구축
  • ASGI(Asynchronous Server Gateway Interface)
  • Python 3.6 이상
  • 최근 출시(2018년)
  • 고속의 빠른 성능 처리속도

비교

DjangoFlaskFastAPI
장점대규모 트래픽 처리
내장된 수많은 강력한 기능
보안
장고-어드민
우수한 문서와 많은 커뮤니티
유연함
직관적
쉬운 학습
통합된 테스팅 툴 지원
빠른 성능 처리
비동기 코드 지원
높은 생산력
쉬운 TDD 테스트 예외처리, 배포, 문서화
단점집중화된 URL 루틴 패턴
내장된 ORM
NOSQL 에 유현하지 않음
모놀리식
비동기 지원안함
대용량 앱에는 적합하지 않음
개발자 식력에 따라 코드 품질
베타버전
교육자료 및 커뮤니티가 적음

DjangoFlaskFastAPI
프레임워크 타입Full Stack Web FrameworkWSGI Framework
(Web Server Gateway Interface)
ASGI Framework
(Asynchronous Server Gateway Interface)
유연성내장된 다양한 기능완전한 유연성코드 레이아웃을 제한하지 않음
ORM 사용내장된 ORMSQLAlchemy, PonyORMSQLAlchemy
NoSQL 사용(지원하지 않음)Flask-PyMongPydantic

0개의 댓글