* 본포스팅은 <예제로 배우는 Django 4>에서 발췌한 내용으로 작성되었습니다.
✔ 장고 개요
장고는 일반적인 웹 개발 문제들을 해결하는 일련의 컴포넌트들로 구성된 프레임워크입니다. 장고 컴포넌트는 느슨하게 결합되어 있어, 독립적으로 관리할 수 있습니다. 이는 프레임워크의 여러 계층의 책임을 분리하는데 도움이 됩니다. 데이터베이스 계층은 데이터가 표시되는 방식에 대해 아무것도 모르고, 템플릿 시스템은 웹 요청에 대해 아무것도 모르는 식입니다. 장고는 DRY(don’t repeat yourself) 원칙에 따라 코드 재사용성을 최대로 제공합니다. 장고는 또한 개발이 빨라지도록 도움을 주며 인트로스펙션(introspection)과 같은 파이썬의 동적 기능을 활용해 적은 코드를 사용할 수 있도록 합니다.
장 고 의 디 자 인 철 학 에 관 해 서 는 https://docs.djangoproject.com/en/4.1/misc/design-philosophies/에서 자세히 알아볼 수 있습니다.
✔ 주요 프레임워크 컴포넌트
장고는 잘 알려진 MVC(Model-View-Controller) 패턴과 약간 유사한 패턴인 MTV(Model-Template-View) 패턴을 따릅니다. 템플릿이 뷰 역할을 하고 프레임워크 자체가 컨트롤러 역할을 합니다.
장고 MTV 패턴의 각 요소의 역할은 다음과 같이 나뉩니다.
• 모델 - 논리적 데이터 구조를 정의하는 데이터베이스와 뷰 사이의 데이터 핸들러입니다.
• 템플릿 - 프레젠테이션 계층입니다. 장고는 브라우저가 렌더링하는 모든 것을 가진 일반 텍스트 템플릿 시스템을 사용합니다.
• 뷰 - 모델을 통해 데이터베이스와 통신하고 뷰를 위해 데이터를 템플릿으로 전송합니다.
프레임워크 자체가 컨트롤러 역할을 합니다. 장고 URL 구성에 따라 적절한 뷰로 요청을 보냅니다. 장고 프로젝트를 개발할 때는 항상 모델, 뷰, 템플릿 및 URL로 작업합니다. 이 장에서는 이 요소들이 어떻게 조합되는지 배울 것입니다.
✔ 장고 설치하기
컴퓨터에 장고를 설치하는 간단한 방법을 소개해 드리겠습니다.
- pip를 사용해서 장고 설치하기
pip 패키지 관리 시스템은 장고를 설치하는 기본적인 방법입니다. 파이썬 3.10에는 pip가 함께 들어 있지만 별도로 https://pip.pypa.io/en/stable/installation/에서 pip 설치 지침을 볼 수 있습니다. 쉘 프롬프트에서 다음 명령을 실행해서 pip로 장고를 설치합니다.
그러면 가상 환경의 파이썬 site-packages/ 디렉터리에 장고의 최신 4.1 버전이 설치됩니다. 이제 장고가 성공적으로 설치되었는지 확인하겠습니다. 쉘 프롬프트에서 다음 명령을 실행합니다.
4.1.X(역자의 경우 4.1.5)라고 버전이 출력되면 장고가 컴퓨터에 성공적으로 설치된 것이며, No module named Django라는 메시지가 출력되면 장고가 컴퓨터에 설치되지 않은것입니다.
장고 설치에 문제가 있는 경우 https://docs.djangoproject.com/en/4.1/ intro/install/에서 다양한 설치 옵션들을 검토할 수 있습니다.
- 장고는 다양한 방법으로 설치할 수 있 습 니 다 . https://docs.djangoproject.com/en/4.1/topics/install/에서 다양한 설치 옵션을 찾을 수 있습니다.
- 장고 4의 새로운 기능
장고 4는 이전 버전과 호환되지 않는 일부 변경 사항을 포함한 일련의 새로운 기능들을 도입하는 동시에 일부 기능들을 더 이상 사용하지 않고(deprecated) 오래된 기능들을 제거했습니다. 정해진 간격의 시간에 맞추어 새 버전이 나오는 방식이기 때문에 장고 4에서 급격한 변화는 없어 장고 3 애플리케이션을 4.1로 쉽게 마이그레이션할 수 있습니다. 장고 3는 처음으로 ASGI(Asynchronous Server Gateway Interface) 지원을 포함했으며 장고 4.0에서는 장고 모델에 대한 기능적 고유 제약 조건, Redis를 사용한 데이터 캐싱 내장 지원, 표준 파이썬 패키지 zoneinfo를 사용한 기본 시간대 구현, 새로운 scrypt 패스워드 해시지원, 폼에 대한 템플릿 기반 렌더링 이외에도 소소한 신기능들이 추가되었습니다.
장고 4.0은 파이썬 3.6, 3.7의 지원을 중단했습니다. 또한 PostgreSQL 9.6, Oracle 12.2 및 Oracle18c의 지원도 중단했습니다. 장고 4.1은 클래스 기반 뷰를 위한 비동기 핸들러, 비동기 ORM 인터페이스, 모델 제약 조건의 새로운 유효성 검사 및 폼 렌더링을 위한 새로운 템플릿을 도입했습니다. 4.1 버전은 PostgreSQL 10과 MariaDB 10.2에 대한 지원을 중단했습니다. 장고 4.0 릴리즈 노트와 4.1 릴리즈 노트 전체 변경 목록은 각기 https://docs.djangoproject.com/en/dev/releases/4.0/와 https://docs.djangoproject.com/en/4.1/releases/4.1/에서 확인할 수 있습니다.
《예제로 배우는 Django 4》
'IT 정보' 카테고리의 다른 글
[Django 4] 장고 프로젝트 만들기 (1) | 2024.03.04 |
---|---|
[블렌더] 사실적인 표현을 방해하는 모델링 실수들 ③ (0) | 2024.01.03 |
[블렌더] 사실적인 표현을 방해하는 모델링 실수들 ② (0) | 2024.01.02 |