백엔드하면 어떤 언어가 떠오르시나요 ? 역시 우리나라는 JAVA공화국! JAVA가 먼저 떠오르죠! python하면 아직 이미지가 빅데이터, 머신러닝 등에 특화된 언어라고만 생각하기 쉽습니다. 하지만 아래의 도표에서 볼 수 있듯이 세계적으로는 Java의 Spring보다 오히려 python의 Flask와 Django가 더욱 많이 쓰이고 있는 백엔드 프레임워크인 것을 알 수 있습니다! 그래서 python의 백엔드프레임워크의 특징에 대해 궁금증이 생겨서 찾아보았습니다!
1. Flask
플라스크(Flask)는 파이썬으로 작성된 마이크로 웹 프레임워크의 한 종류입니다. 특별한 도구나 라이브러리가 필요 없기 때문에 마이크로 프레임워크라 부른다. 그래서 굉장히 러닝커브가 작다는 장점이 있습니다.
- 마이크로 프레임워크로 경량 프레임워크
- 유연함, 심플, 쉬운확장
- 쉬운 학습 및 러닝 커브 낮음
- 높은 생산성
- 내장된 DB프레임워크가 없어서 오픈소스 DB라이브러리 사용
- 가볍다! but 개발 이외에 신경써야할 상황이 생길수도
- 에어비엔비, 넷플릭스, 레드햇 에서 사용
2. Django
장고(Django)파이썬으로 작성된 오픈 소스 웹 프레임워크로, 모델-뷰-컨트롤러(MVC) 패턴을 따르고 있다. 고도의 데이터베이스 기반 웹사이트를 작성하는 데 있어서 수고를 더는 것이 django의 주된 모굪이다. 그렇기 떄문에 django ORM을 통해 객체 간의 관계를 바탕으로 SQL을 자동으로 생성하여 불일치를 해결한다.
- 너가 웹개발하기에 필요한건 모두 다 있어! 느낌
- 효율적이고 파워풀한 내부패키지 기능
- model-template-view 패턴
- django Rest Framework로 쉽게 restful API 구축
- 강력한 보안
- 고성능 사이트 대응으로 주로 대형기업이나 테크 기업에서 사용
- django ORM을 사용
- 인스타그램, 스포티파이, 핀터레스트, 요기요 에서 사용
- 프론트개발하던 사람이 백엔드개발 할때 좋을 것 같음!
- 왜? 모든것이 갖춰져있음..!
3. FastAPI
FastAPI는 2018년이후 파이썬 3.6+ 으로 API서버를 구축하기 위한 모던하고, 빠른 웹 프레임 워크이다. 비동기 방식을 채택하고 있기 때문에 퍼포먼스가 굉장히 빠르고 최근 빠르게 시장 점유율을 늘리고 있다.
- 가장 최근에 나온 웹프레임워크로 빠르게 점유율 상승중
- Flask와 다르게 비동기작업 지원 -> Flask보다 빠름
- 고속의 빠른 성능 처리속도
- 2018년 출시
- 스프링부트와 구조가 비슷해서 JAVA하던 분들이 사용하기 적합해보임!
- UBER에서 사용
정리하면 아래와 같은 장단점들이 존재한다.
'IT세상🌍 > 이것저것' 카테고리의 다른 글
프로젝트에 Airbnb스타일 eslint + prettier 적용하기! (0) | 2021.07.31 |
---|---|
[Git] gitlab merge conflict 해결방법 (0) | 2021.07.26 |
[2021 카카오 인턴십] 온라인 코딩테스트 후기 / python (0) | 2021.05.11 |
[스코페] Startup Coding Festival 2021 1차 테스트 후기 (0) | 2021.04.23 |