Django 특징
파이썬
Django는 파이썬 기반이기 때문에 파이썬의 장단점이 곧 Django의 장단점이 될 수 있다.
장점
- 다양하고 강력한 라이브러리가 많다.
- 스크립트 언어로, 비교적 쉽고 간결하다. -> 개발시간 단축
- 다양한 운영체제 활용
- 높은 생산성
단점
- 모바일 컴퓨팅에 취약해 파이썬으로 개발된 스마트폰 어플리케이션이 거의 없다.
- 언어 설계면에서 파이썬이 동적 입력 형태를 띠기 때문에, 더 많은 테스트가 필요하고 실행했을때 드러나는 오류가 있다.
- 들여쓰기가 문법적으로 중요하다.
Django 프레임 워크
파이썬으로 작성된 웹 개발 프레임워크. MTV 아키텍처를 따르고, ORM(Object Relational Mapper)이 프로젝트의 객체들을 데이터베이스 테이블과 매핑을 도와주어 복잡한 데이터 기반 웹 사이트 개발이 쉬워질 수 있다. Instagram, Disqus, Mozilla, NASA 등이 Django로 개발되었다.
장점
- 파이썬 기반 웹 프레임워크
- 파이썬의 라이브러리를 사용할 수 있다.
- 오픈소스
- 기본적인 기능들을 미리 만들어 제공해 쉽고 빠르게 개발
- Full Stack Framework : front, backend 등 서버가 필요로 하는 것을 모두 Django가 맡아서 함.
단점
- 수많은 만들어진 기능을 제공하지만 그만큼 세세한 설정 변경이나 자세한 조정이 힘들다.
- 모든 것이 Django ORM을 기반으로 한다.
- 작업하는데 full system의 지식이 필요하다.
다른 웹 프레임워크
Laravel
웹 애플리케이션과 모바일 애플리케이션을 개발하는데 사용되는 PHP 개발 프레임워크이다. 권한 부여 기능, 객체 지향 라이브러리, Artisan, MVC 지원, 보안, 데이터 베이스 마이그레이션 등 다양한 기능을 제공한다.
웹 사이트와 앱에 대한 인증을 쉽게 구현할 수 있다. 자원에 대한 접근 제어도 할 수 있다.
Ruby on Rails
Ruby 프로그래밍 언어로 작성된 서버 측 웹 개발 프레임워크.
MVC와 RESTful 디자인을 사용한다. 방대한 오픈소스 코드들을 사용할 수 있다. GitHub, Shopify, Airbnb, Twitch, SoundCloud, Hulu, Zendesk 등이 이 프레임워크로 개발되었다.
Meteor JS
무료이고, 오픈소스 *동형(Isomorphic) 자바스크립트 full stack 웹 프레임워크이다. Django 처럼 백엔드와 프론트엔드를 모두 자바스크립트로 구성할 수 있다.
동형(Isomorphic) 자바스크립트: 서버와 클라이언트 사이드에서 모두 동작하는 자바스크립트 어플리케이션을 뜻한다. Universal Javascript 라고도 한다.
페이지 로드 속도가 빠르고 검색 엔진 최적화(SEO)에 좋다.
Express JS
Node.js에서 개발된 웹 서버 개발 프레임 워크.
API 서버를 굉장히 쉽게 개발할 수 있다. MEAN Stack으로 구성할 수 있다.
MEAN stack: MongoDB, Express, AngularJS, Node.js 기반으로 구성된 프레임워크이다.
npm으로 수많은 모듈을 사용하여 웹 기능을 확장할 수 있다.