Django(장고) 개념

seovee·2025년 2월 9일
0

🗂️ 개념정리

목록 보기
10/10
post-thumbnail

현 프론트엔드 개발을 하고 있는데, NextJS로만 웹페이지를 개발하다가 최근 Django(장고) 도입을 위해 정리해 보았다. 거의 개발 인생(...1년)을 JavaScript로만 지내다보니까 파이썬이라는 새로운 언어가 쉽지않아 정리 안하면 까먹을거 같아 정리한다.

✔︎ Django(장고)란?


장고는 파이썬으로 작성된 오픈소스 풀스택 프레임워크.
빠른개발, 높은 보안성, 뛰어난 범용성, 문서화가 큰 특징이며 특유의 높은 생산성으로 특히 스타트업에서 사랑받고 있고, 일반적으로 파이썬을 웹 서비스에 쓴다고 하면 장고를 쓴다고 생각하면 된다.
장고로 개발된 가장 큰 서비스는 인스타그램이란다 😳

주요 특징

1) MVT 아키텍처

MVC 패턴을 장고 스타일로 변경한 것.
각 구성 요소가 독립적으로 동작, 유지보수와 확장이 용이.

  • Model: ORM을 통한 데이터베이스 정의, 구조와 타입 정의, 관계 설정
  • View: 사용자 요청을 처리하고 응답을 반환하는 부분, 비즈니스 로직, 템플릿 데이터 전달
  • Template: 사용자에게 보여지는 HTML 페이지 정의, DTL(Django Template Language) 사용, 필터와 태그를 통한 데이터 가공, HTML 코드 재사용

2) 강려크한 ORM기능을 지원

ORM이란 객체(Object)의 관계(Relational)를 연결(Mapper)해주는 것.
파이썬과 데이터베이스의 SQL사이의 통역사 역할로 Django ORM은 강력한 데이터베이스 추상화 도구.
개발자가 SQL을 적지 않고도 프로그래밍 언어로 DML를 수행할 수 있는 것이다.

👍🏻 장점

  1. 강력한 ORM 기능
  2. 관리자 페이지(admin)을 기본적으로 제공
  3. 별도의 SQL Query를 쓰지 않고도 객체 간의 관계를 풀어낼 수 있어 직관적 파악 가능
  4. 자주 사용되는 로직을 묶어서 사용하므로 재사용 및 유지보수가 용이
  5. 만들어진 엔티티에 따라 권한 목록을 알아서 제공

👎🏻 단점

  1. 범용성은 뛰어나지만 원하는대로 커스텀은 어려움
  2. 파이썬의 단점을 가짐

다음에는 간단하게 정리하고 사용하는 방법을 정리해보겠다.

✔︎ Django 기본기


Python 설치

  1. 파이썬 홈페이지에 가서 알맞는 Version 설치
  2. 콘솔을 열고 python3 --version을 입력하고 버전 확인

가상환경(Virtual environment)

설치

개발 환경을 깔끔하게 관리하는데 도움이 되는 도구!
1. working directory를 만들고
2. python3 -m venv 가상환경이름(소문자로)

사용

가상환경이름으로 디렉토리가 만들어진다.

source 가상환경이름/bin/activate

. 가상환경이름/bin/activate

이렇게 두가지 방법으로 실행하면 가상환경이 실행된다.

📌 참고


profile
낭만이 빠지면 섭하지

0개의 댓글

관련 채용 정보