Django는 파이썬으로 만든 웹 프레임워크
웹사이트를 빠르고 안전하게 만들 수 있게 도와주는 도구 모음
예: 블로그, 커뮤니티, 쇼핑몰 등 다양한 웹 앱을 만들 때 많이 사용
DRF는 Django 위에서 작동하는 REST API 서버를 만들기 위한 확장 프레임워크
주요 특징:
예: 프론트엔드(React, Vue)랑 백엔드(DRF)가 분리된 SPA(Single Page App) 개발할 때 많이 사용
| 구분 | Django | DRF (Django REST Framework) |
|---|---|---|
| 목적 | 웹사이트(HTML 페이지) 렌더링 중심 | API 서버(JSON 응답) 구축 중심 |
| 출력 형태 | HTML, 템플릿 기반 | JSON, XML 등 데이터 중심 |
| 사용 대상 | 웹 브라우저(PC/모바일 웹) | 프론트엔드(React, Vue)나 모바일 앱 등 클라이언트 |
| 핵심 구성 요소 | View, Template, Model (MTV 구조) | APIView, Serializer, Model (RESTful 구조) |
| 요청 처리 방식 | 폼 제출(POST), URL로 라우팅 | RESTful 방식(GET, POST, PUT, DELETE 등) |
| 프론트 역할 | Django가 직접 HTML 페이지까지 렌더링 | 프론트가 UI를 담당, DRF는 데이터만 제공 |
| 인증/권한 | 기본 User 모델 사용 가능 | Token, JWT 등 다양한 인증 방식 지원 |
| 적합한 예시 | 게시판, 블로그, 전통적인 쇼핑몰 | 앱 백엔드, SPA, 마이크로서비스 아키텍처 기반 시스템 |