[Python] 4개의 Web Frameworks 비교 (Pyramid, Bottle, Django, Flask) Develop Tip

Python의 IDE로 사용하고 있는
PyCharm이 버전3이 되었습니다.
What's New 를 살펴보다 보니 Pyramid 웹 프레임워크가
템플릿이 추가되었다는 군요.

그래서 살펴보다가 Python 언어로 만들어진 웹 프레임워크의 대표적인 4가지,

간단히 번역을 해 보았습니다.

2013년 2월 26일 IndyPy Python Web Shootout 2013 에서 발표된 내용입니다.


Pyramid - 유연성
피라미드는 Pylons 1.0과 repoze.bfg 를 병합하면서 탄생하였습니다. 
"배터리 포함" 이라는 파이썬 사상에 어긋나지는 않지만 사이트 바로 적용할 수 있는
컴포넌트를 바로 의미하지는 않습니다.
피라미드 커뮤너티는 빠르게 성장하고 있습니다. 문서는 아주 잘 정리되어 있어서
별도의 커뮤너티의 도움이 없이도 작업할 수 있을 정도입니다. 
피라미드는 최소화, 속도, 신뢰성을 지향합니다. 
Python3을 지원하는 최초의 웹 프레임워크 중의 하나입니다.
장점:
  • 빨리 시작할 수 있습니다
  • API 프로젝트에 작업 가능합니다
  • 생각을 프로토타이핑 하는데 용이합니다
  • CMS 혹은 KMS와 같은 대용량 웹 앱도 만들어지고 있습니다

Bottle - 간결함
바틀은 라우팅, 템플릿과 WSGI를 통한 약간의 추상화를 하는 박스를 만들면서
탄생한 마이크로 프레임워크입니다. Python3에 구동 가능합니다.
장점:
  • 융통성을 찾는 개발자에게 유리합니다
  • 웹 API를 생성할 수 있습니다
  • 무언가 정말로 간단한 웹을 위한 사람을 위한 것입니다

Django - 강렬함
쟁고는 아마도 파이썬 기반의 가장 큰 웹 프레임워크입니다. 크고 활발한 커뮤너티를 가지고 있습니다.
또한 많은 기능을 포함할 뿐만 아니라 관리자 인터페이스도 가지고 있습니다.
모델 기반의 폼을 가지고 있고 템플릿 언어를 포함하며 개발자 문서도 잘 되어 있습니다.
쟁고를 이용하면 좋은 사람:
  • 온라인 포럼 등을 통하여 서로의 생각을 공유하는 것을 종아하는 개발자
  • 강력한 내장 툴을 이용하여 빠르게 무언가를 만들려고 하는 개발자
유용한 쟁고 앱:
  • South (스키마 및 데이터 전환)
  • Celery (역주: 샐러리 분산 API 프레임워크)
  • Rest 프레임워크 또는 TastyPie
  • Django Extensions

Flask - 민첩함
플래스크는 하나의 파일로 구성된 소스가 웹 프레임워크가 될 수 있다는 만우절의 농담과도 같은
마이크로 프레임워크로 탄생하였습니다. 간결하고 작은 것을 지향합니다.
전체 프레임워크는 몇 개의 모듈로 구성되어 있습니다. 처음 시작을 위한 뼈대는 없는 대신,
빈 페이지에서 시작할 수 있습니다. 플래스크가 자체로 많은 기능을 제공하지 않는더라도
ORM, 폼 검증 및 업로드 처리 등을 위한 확장 기능을 이용할 수 있습니다.
장점:
  • 프로그래밍 교육
  • "맛보기" 코딩을 하려는 개발자
  • 빠르게 프로토타입을 구성해 보려는 개발자
  • 단일 구성의 앱을 만들려는 개발자
플래스크와 같이 사용하면 좋은 모듈 구성:
  • Flask + Jinja2 + SQLAlchemy
  • Flask + Mako + SLQLAlchemy
  • Flask + Jinja2 + Peewee
  • Flask + CouchDB

우리나라 현실에서는,
파이썬 개발자도 적을 뿐더라
쟁고 커뮤너티가 그나마 유지가 되고 있는 것 같습니다만
다양한 프레임워크를 이용한 다양한 방법론이
활성화되었으면 하는 바램입니다.

어느분께는 도움이 되셨기를...



핑백

덧글

  • 카인 2013/11/14 12:17 # 삭제 답글

    pycharm 및 python 관련해서 많은 정보 얻어 갑니다. 좋은 글 감사합니다.
  • 지훈현서아빠 2013/11/14 14:07 #

    도움이 되셨다니 저의 보람입니다~ ^^
  • vero 2013/11/20 16:25 # 삭제 답글

    좋은 정보 얻어갑니다~

    혹시 Web2py에 관한 자료도 갖고 계신지요? ^^:
  • 언언 2014/02/17 13:11 # 삭제 답글

    좋은 내용 감사합니다.^^
  • 지훈현서아빠 2014/02/17 13:28 #

    도움이 되셨다니 저의 보람입니다~^^
  • thanks 2014/07/23 17:38 # 삭제 답글

    잘보고 갑니다. ^^
  • 굿굿 2014/09/24 14:22 # 삭제 답글

    영어 발음 표현이 좋으시네요.
  • 지훈현서아빠 2014/09/24 17:56 #

    플라스크, 장고 라고 할껄 그랬나요? ㅎㅎ
  • 원어민 2015/01/20 19:27 # 삭제 답글

    django - > ㄷ재앵고우
    flask - > 플ㄹ래슼
  • 지훈현서아빠 2015/01/21 13:52 #

    원어민 발음 감사드립니다~~ ^^
  • 파이랜드 2015/04/27 15:26 # 삭제 답글

    잘 정리된 flask 자료를 보면서 많이 불안했는데, 위로가 되었습니다.
  • 네이티브 2015/05/14 16:49 # 삭제 답글

    django = 쮕꼬
    flask = 플뤠스-ㅋ

    좋은글 감사합니다 ^^
  • 무전병 2016/03/26 21:38 # 삭제 답글

    2016년에도 여전히 이글에서 도움을 받습니다. 감사드립니다.
  • 지훈현서아빠 2016/03/27 11:43 #

    도움이 되셨다니 저의 보람입니다~ ^^
  • 원어민 2016/12/01 14:44 # 삭제 답글

    주인장님 잘계시죠? 2015년1월에 댓글남기고 어느덧 2년조금 안된시간이 지났네요. 쟝고에 관한 정보찾다가 여기까지왔었는데 ^^... 갑자기 생각나서 다시 찾아왔습니다. 연말 잘보내시고 항상 좋은글 많이 올려주세요. 감사합니다
  • 지훈현서아빠 2016/12/01 16:26 #

    누구신지 모르겠지만 이렇게 안부까지...
    감격스럽네요.
    항상 행복하셔요~~
  • 개발자 2017/07/05 14:40 # 삭제 답글

    2017년 7월 5일 기준으로 웹프레임워크 참고에 도움이 되었습니다.
  • 지훈현서아빠 2017/07/06 09:27 #

    도움이 되셨다니 저의 보람입니다~
댓글 입력 영역

구글애드텍스트