COUPANG
쿠팡에서 추천합니다!
www.coupang.com
웹 개발을 시작하게 되면 많은 프레임워크들을 접할 수 있다.
- Java의 Spring
- Python의 Django
- Node.js의 Express
- PHP의 Laravel
- Ruby의 Ruby on rails
등등 많은 프레임워크들이 있다.
추가로 웹 개발을 할 때 프론트엔드, 백엔드 라는 용어가 있다.
쉽게말해,,,
프론트엔드는 사용자(or 고객)에게 보여주는 화면을 담당하는 것이고(ex.메뉴위치, 배경 색상 등..)
백엔드는 고객에게는 보이지 않은 뒤에서의 처리, 즉 관리자모드(사용자의 데이터 관리, 화면 구성, 로그인/로그아웃 등..)를 담당한다.
그중에서 오늘은 백엔드 관련해서
Python의 Django와 Flask, Pyramid를 비교해보고자 한다.
일단 짧은 시간 안에 웹 개발을 하고 싶다면
Flask와 Pyramid를 이용하는 것이 좋다.
위 코드는 실제로 flask와 Pyramid를 이용한 웹 서버를 생성한 예다.
단 몇 줄로 웹을 생성할 수 있다.
하지만 굉장히 가볍기 때문에 많은 기능을 제공하진 않는다.
그에 반해,,,
우리의 Django는 거대한 프레임워크이다.
장고의 특징은
많은 유틸리티가 이미 개발자에게 제공된다는 점이다.
예를 들면,
flask를 사용하여 웹 개발을 하려면
- 데이터베이스도 직접 관리해야 하고,
- 사용자 인증도 직접 해야하고,
- form도 다룰 수 있어야 하고,
- 로그인/로그아웃 기능도 직접 만들어야 하고...
여러 기능들을 직접 다 개발해야 한다.
하지만 Django를 사용하면 이러한 것들이 다~~ 제공된다.
그만큼 Django로 웹 개발을 하면 편리한 기능들이 많이 제공된다.
따라서 웹 개발을 편리하게 할 수 있다.
우리가 자주 사용하는 유튜브, 구글, 네이버 웹페이지들도
Django를 이용하면 편리하게 만들 수 있다!
어쩌다 보니 Django 예찬론자가 되었다...
정리하자면 ,,
장고의 특징(백엔드 부분)
- 많은 유틸리티를 제공( 이메일 인증, 로그인/로그아웃, 관리자 패널....)
- DB 테이블 자동생성( 한 번 데이터를 생성하면 자동 테이블 생성과 함께 매핑까지 같이 됨)
- 웹 개발 시간 절약( 기능들을 직접 개발하지 않아도 되기 때문에)
그렇다고 flask와 Pyramid 가 안 좋다는 것을 아니다..
위에서 말했다시피 Django는 이미 만들어진 기능들을 사용하는 특성이 강하기에
그 기능들을 직접 구현하고 싶으면 Django를 사용하지 않아도 된다.
하지만 큰 단위의 웹 개발을 할 땐,
시간을 단축해야 하기에 판단은 본인이...
'Python > Django' 카테고리의 다른 글
[Django]Django로 웹개발 시작하기(#4. admin : 관리자 로그인하기) (0) | 2021.05.26 |
---|---|
[Django]Django로 웹개발 시작하기(#0. vscode에 폴더 세팅하기) (0) | 2021.05.25 |
[Django]Django로 웹개발 시작하기(#3. admin(관리자 로그인)창 구현하기 ) (0) | 2021.05.14 |
[Django]Django로 웹개발 시작하기(#2. 장고 프로젝트 생성) (0) | 2021.05.12 |
[Django]Django로 웹개발 시작하기(#1. 장고 설치하기) (0) | 2021.05.08 |