일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- cos pro 1급
- AndroidStudio
- codingtest
- android
- DFS와BFS
- 분할정복
- BAEKJOON
- C++
- Algorithm
- issue
- 동적계획법
- 안드로이드스튜디오
- cos pro
- 코딩테스트
- vuejs
- 코드품앗이
- 개발
- 코테
- 알고리즘
- Vue
- cos
- DFS
- 동적계획법과최단거리역추적
- 파이썬
- 백준
- django
- 안드로이드
- Flutter
- DART
- Python
- Today
- Total
Development Artist
[웹 서비스 A-Z][Django] #6 Config 본문
Install
장고 프레임워크를 사용하기 위해서 python 가상환경을 만들어주려고 합니다.
어떤 종류의 CLI로 가상환경을 만들어주어도 괜찮지만, 아주 기똥찬 python IDE를 우리는 알고 있습니다. 바로 pyCharm 입니다.
IDE는 Integrated Development Environment의 약자로, 통합 개발 환경이라고 합니다. 우리가 익히 알고 있는 IDE는 VSC가 있습니다. 또는 안드로이드 스튜디오가 있구요.
이처럼 IDE는 소프트웨어 개발에 관련된 모든 작업, 즉 패키지 인클루딩, 문서 편집, 컴파일, 디버그, 원격 서버 액세스, 바이너리 배포 등을 하나의 프로그램 안에서 모두 처리하는 환경을 제공하는 툴입니다.
pyCharm을 설치 하기 위해서 https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows 다음 링크를 참고하세요.
다운로드를 완료했다면, pyCharm을 켜봅니다. 그리고 new Project 를 클릭합니다.
Location : 경로와 프로젝트 명을 설정.
New environment using [Virtualenv] : 가상환경 사용. (가상환경에 대해서는 아래에 더 언급합니다.)
- Location : 가상환경 위치.
- Base Interperter : 가상환경에서 사용할 파이썬 버전.
위의 사항을 확인하고 Create을 합니다. 가상환경을 사용하는 이유는 프로젝트마다 격리된 환경을 생성하여 해당 프로젝트에서 독립적으로 패키지 적용을 할 수 있기 때문입니다.
가령 프로젝트 A와 프로젝트 B에서 공통적으로 사용하는 a라는 패키지가 있습니다. 그런데 프로젝트 B가 고도화 등의 이유로 패키지 a의 버전을 업그레이드 해야하는 상황이 생겼습니다. 하지만 a를 업그레이드 하면 A와는 호환이 되지 않는 문제가 발생합니다. 이를 충돌이라고 하는데, 가상환경을 통해 분리를하면 이런 부분을 해결할 수 있습니다.
├─.idea
│ └─inspectionProfiles
└─venv
├─Lib
│ └─site-packages
│ ├─pip
│ │ ├─ ...
│ ├─pip-21.1.2.dist-info
│ ├─pkg_resources
│ │ ├─ ...
│ ├─setuptools
│ │ ├─ ...
│ ├─setuptools-57.0.0.dist-info
│ ├─wheel
│ │ ├─ ...
│ ├─wheel-0.36.2.dist-info
│ └─_distutils_hack
└─Scripts
다음과 같이 가상환경 폴더 venv가 있는 깡통 프로젝트를 만들었습니다.
다음 시간에는 장고를 설치해보도록 하겠습니다.
Additional
가상환경에 대해 위에서 언급했는데요, 가상환경의 종류도 여러가지 있습니다.
- venv : 파이썬에 내장되어 있는 가상환경 모듈. pip이 내장되어 있어서 편리.
- pipenv : 'pipfile.lock' 파일 기반으로 패키지를 관리. 파이썬에서 공식으로 권장하는 가상환경 모듈. virtualenv로 가상환경을 생성하고 pip으로 패키지를 자동으로 설치한다. lock 파일의 해쉬로 안전한 버전 관리가 가능. pip으로 패키지 설치시 자동으로 'pipfile.lock'에 변경사항이 반영된다.
- conda : 머신러닝, 데이터과학 분야의 다양한 라이브러리들이 설치된 런타임.
'Project_Personal' 카테고리의 다른 글
[웹 서비스 A-Z][Django] #8 Mechanism (0) | 2023.03.09 |
---|---|
[웹 서비스 A-Z][Django] #7 Creation (0) | 2023.03.03 |
[웹 서비스 A-Z][Vuejs] #5 Life Cycle (0) | 2023.03.01 |
[웹 서비스 A-Z][Vuejs] #4 Design Pattern (0) | 2023.02.28 |
[웹 서비스 A-Z][Vuejs] #3 Creation (0) | 2023.02.27 |