Index |
1. 환경설정 이론 |
2. 환경설정 실습 |
3. Django 특징 |
4. Django 구조 |
5. Convention |
Reference |
1. 환경설정 이론
환경설정 이론
가상환경 설정
# 가상환경 생성
conda create -n <가상환경명> python=<버전>
# 가상환경 목록 확인
conda env list
# 가상환경 실행
conda activate <가상환경명>
# 가상환경 종료
conda deactivate
# 가상환경 삭제
conda env remove -n <가상환경명>
필요한 package 설치
# conda에서 package 설치
conda install <package명>
# package 목록 확인
conda list
# python에서 package 설치
pip install <package명>
# package 목록 확인
pip list
2. 환경설정 실습
환경설정 실습
1. conda 설치
- Apple M2 Pro + Sonoma
2. 환경 설정
# 가상환경 실행
conda create -n django python=3.10
conda activate django
# Package 설치
conda install django~=4.1.0
3. Django 특징
Django 특징
- Django: 컴포넌트들로 구성된 Framework, 느슨하게 결합되어 독립적으로 관리
Django3
- ASGI 지원
Django4
- 장고 모델에 대한 기능적 고유 제약 조건
- Redis를 사용한 데이터 캐싱 내장 지원
- zoneinfo를 사용한 기본 시간대 구현
- 새로운 scrypt 패스워드 해시 지원
- 폼에 대한 템플릿 기반 렌더링
- Python 3.6, 3.7 지원 중단
- PostgreSQL 9.6, Oracle 12.2, Oracle18c 지원 중단
Django4.1
- 클래스 기반 뷰를 위한 비동기 핸들러, 비동기 ORM 인터페이스
- 모델의 제약 조건의 새로운 유효성 검사 및 폼 렌더링을 위한 새로운 템플릿
- PostgreSQL 10, MariaDB 10.2 지원 중단
4. Django 구조
Django 구조
- Django는 Model-Template-View로 구성
- Model: 논리적 데이터 구조를 정의하는 데이터 베이스와 View 사이의 데이터 핸들러
- Template: 프레젠테이션 계층. 브라우저가 렌더링하는 일반 텍스트 템플릿 시스템 사용
- View: Model을 통해 데이터베이스와 통신하고 뷰를 위해 데이터를 템플릿으로 전송
- URL Dispatcher: URL 패턴을 분서갛여 매칭되는 패턴에 해당하는 View를 실행
5. Convention
Convention
Coding Convention
- Python은 PEP8을 따름.
- Package 순서: 내장 package → 설치 package → custom package
- Django Style: Template, View, Model
Git Branch Strategy
- main: 서비스를 배포하는 branch
- dev: 기능별 개발이 통합된 branch
- feature: 기능별 개발을 위한 branch
- release: 배포전 QA를 위한 branch
- hotfix: 배포 후 버그 발생시 수정을 위한 branch
# 현재 브랜치 확인
git branch
# 브랜치 생성
git branch <브랜치명>
# 브랜치 목록 확인
git branch -a
# 병합된 브랜치 목록 확인
git branch --merged
git branch --no-merged
# 브랜치 변경
git checkout <브랜치명>
# 브랜치 병합
git merge <병합할 브랜치명>
# 원격 브랜치 업데이트
git remote update
# 원격 브랜치 가져오기(tracking)
git checkout -t <원격 브랜치명>
Git Commit Message
type: Subject
body
footer
type
- feat: 새로운 기능 추가
- fix: 버그 수정
- docs: 문서 내용 변경
- style: 포매팅, 세미콜론 누락, 코드 변경이 없는 경우
- refactor: 코드 리팩토링
- test: 테스트 코드 작성
- chore: 빌드 수정, 패키지 매니저 설정
subject
- 최대 50글자, 마침표와 특수기호는 사용하지 않음.
- 영문 표기시 소문자와 과거시제 사용
body
- 상세히 작성, 무엇을 왜 진행했는지 설명
- 한 줄에 72자
footer
- 이슈 트래커의 ID 작성
- Resolves: 어떤 이슈와 관련된 커밋인지
- See also: 참고할 사항
Reference
[Text: Miniconda (Installation)] https://docs.anaconda.com/free/miniconda/#quick-command-line-install |
[Text: Django (Design philosophies)] https://docs.djangoproject.com/en/5.0/misc/design-philosophies/ |
[Text: Django (Django 5.0 Release)] https://docs.djangoproject.com/en/5.0/releases/ |
[Text: Udacity (Commit Style)] https://udacity.github.io/git-styleguide/ |
[Text: Google (Commit Style)] https://developers.google.com/blockly/guides/contribute/get-started/commits |
[Text: Django (Coding style)] https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/coding-style/ |
[Text: Django (JS Style)] https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/javascript/ |
'Web Framework > Django' 카테고리의 다른 글
[Django] Admin (0) | 2024.04.22 |
---|---|
[Django] Model 및 Database 2 (0) | 2024.04.22 |
[Django] Model 및 Database 1 (0) | 2024.04.21 |
[Django] Project 및 Application (0) | 2024.04.21 |
[Django] 학습 참고자료 (0) | 2024.03.09 |