Django 튜토리얼 심화:재사용 가능한 앱 만들기
-
재사용의 중요성
웹 앱을 설계, 빌드, 테스트, 유지하는 것은 반복작업이고 이 중 몇몇은 재사용으로 구할 수 있음
재사용은 파이썬의 방향
Python package Index(PyPi)는 파이썬 프로그램안에서 가질 수 있는 넓은 패키지를 가지고 있음
Django 또한 패키지
include 로 앱 분리
-
패키지? 앱?
재사용을 쉽게 하기 위해 연관된 Python 코드를 묶어놓은 것
Python 코드가 들어있는 하나 이상의 파일(모듈) 들이 포함됨
-
-
필수 구성 요소
패키지 빌드에 setuptools 사용
-
setuptools
퀀장 패키징 도구
distribute 포크와 병합됨
-
-
앱 패키징하기
Python 패키징은 쉽게 설치하고 사용할 수 있는 특별한 형식으로 앱을 준비하는 것을 의미
-
순서
-
외부에 디렉토리 생성
-
앱 외부 디렉토리로 옮김
-
README.rst 생성
앱 사용법 설명
-
LICENSE 파일 생성
라이센스 정의
-
setup.fcg, setup.py 생성
앱 빌드와 설치에 대한 설명 정의
-
MANIFEST.in 파일 생성
추가 파일 포함 설명
-
docs 디렉토리 생성하고 자세한 문서 포함
-
python setup.py sdist 로 패키지 빌드
-
-
-
패키지 사용
-
순서
-
pip로 패키지 설치
-
앱 작동
-
pip로 패키지 삭제
-
-
-
앱 퍼블리싱
앱 패키지화로 친구에게 패키지 이메일로 보내기, 웹사이트에 업로드, PyPI 같은 공용 저장소에 패키지 게시 가능
-
Python 패키지 가상 환경으로 설치
-
사용자 라이브러리 직접 설치의 단점
사용자 라이브러리 수정 시 시스템의 다른 Python 소프트웨어에 영향 미칠 수 있음
패키지의 여러 버전을 실행할 수 있ㅇ음
-
venv
여러 개의 Django 프로젝트 관리 시 용이
여러 개의 분리된 Python 환경(라이브러리, 패키지) 관리하게 해줌
-