# 비주얼스튜디오 코드와 파이선
비주얼스튜디오 코드(Visual Studio Code) (opens new window)는 모든 MS 의 오픈소스 활동 중에서 최고의 성공작이라고 생각합니다. 출시 초기부터 안정적인 동작과 빠른 업데이트, MS 이기에 가능한 완벽한 한글 지원, 높은 확장성과 이에 화답하는 풍부한 커뮤니티 확장 프로그램들은 더욱 더 **코드(code)**를 사랑하게 합니다. 저는 개발 뿐만 아니라 텍스트가 필요한 거의 모든 작업을 비주얼스튜디오 코드에서 하고있으며, 지금 이 블로그도 비주얼스튜디오 코드에서 쓰고 있습니다.
# 1. Hello, world 로 가볍게 시작하기
새로운 프로젝트를 만들어봅시다. 비주얼스튜디오 코드는 프로젝트를 하나의 디렉토리 단위로 바라봅니다.
(앞으로 비주얼스튜디오 코드는 짧게 code
라고 부르겠습니다)
# 프로젝트 만들기
The C Programming Language 이후로 "Hello, world" 보다 나은 시작은 없었습니다. 터미널에서 hello
디렉토리를 만들고 **code
**를 실행합니다.
mkdir hello
cd hello
code .
code .
는 현재 디렉토리 (.
)를 프로젝트 root 로 삼는 **code
**를 시작하라는 의미입니다.
디렉토리에 들어가지 않고, 바로 code hello
를 해도 hello
디렉토리를 프로젝트, 즉 같은 프로젝트가 시작합니다.
# 확장 프로그램 설치
우선, 확장 프로그램을 하나 설치하고 진행하겠습니다.
명령 팔레트 ( Command(⌘) + Shift(⇧) + p )를 열어서 'Extensions: Install Extensions' 를 실행합니다. 입력창에 python
을 입력하고 처음 나오는 확장 프로그램 (Extension)을 설치합니다.
여러분의 파이선 코드작성을 여러모로 도와줄 기특한 녀석입니다.
# 코드 작성
새로운 파일 main.py
를 만들어서 아래의 파이선 코드를 입력합니다.
msg = "Hello, world"
print(msg)
# 코드 실행하기
실행하기 위해서 **code
**를 벋어날 필요가 없습니다.
코드 창에서 우클릭 -> 'Run Python file in Terminal (⌘R)' 를 실행하면, 코드 창 아래 터미널이 열리면서 파이선이 실행된 결과를 확인할 수 있습니다.
$ python /Users/kyryu/hello/main.py
Hello, world
멋있지 않나요? 코드 작성 중에 언제나 ⌘R
키를 누르면 마치 IDE 처럼 코드를 실행해서 결과를 확인할 수 있습니다.
# 디버깅
스크립트 언어에서 까다로운 디버깅도 **code
**에서는 쉽게 할 수 있습니다. 디버그 뷰 (Debug View)에서, 원하는 줄에 중지점(break point)를 선택하고, 디버깅 시작 (Start Debugging, F5)를 누르면 중지점에서 실행이 멈추면서 좌측 디버그 뷰의 VARIABLES
영역에서 로컬 변수의 값을 비롯한 다양한 디버깅 정보를 확인할 수 있습니다.
디버깅 흐름이 2 행에 멈췄을 때, VARIABLES
영역에서 msg
의 값을 더블클릭한 후 Welcome!
으로 바꾼 후 다시 실행하면 결과가 바뀌는 것을 확인할 수 있습니다 .
$ python /Users/kyryu/hello/main.py
Welcome!
# 2. 내게 맞는 환경 꾸미기
사실 저는 파이선 3 으로 개발하지만, 혹시나 하위 호환이 되지않는 프로그램이 있을 수 있기 때문에 시스템은 파이선 2 를 유지하고 있습니다.
**code
**를 닫고 pipenv
(opens new window)를 이용해서 파이선 3 환경을 만들어줍니다.
# 파이선 3 와 numpy
pipenv --three
pipenv install numpy
**code
**를 다시 실행하고, 새로 만든 환경에 설치한 numpy
를 사용해봅시다.
import numpy as np
a = np.arange(15).reshape(3, 5)
print(a.shape)
이때, 바로 사용하면 numpy 를 찾을 수 없다는 메시지가 나옵니다.
$ python /Users/kyryu/hello/main.py
Traceback (most recent call last):
File "/Users/kyryu/hello/main.py", line 1, in <module>
import numpy as np
ImportError: No module named numpy
이제 **code
**에게 새로운 환경을 알려주도록 합시다. 명령 팔레트 ( Command(⌘) + Shift(⇧) + p )를 열어서 'Python: Select Interpreter' 를 실행하면 좌측 하단에 Python 3.6.5 (pipenv)
가 표시된 것을 확인할 수 있습니다. 이제 ⌘R
를 눌러서 파일을 실행하면 결과가 잘 나오는 것을 확인할 수 있습니다.
pipenv
(opens new window) 뿐만 아니라virtualenv
,conda
의 가상 환경도 자동으로 잘 찾아줍니다.
# 코드의 일부분만 실행
코드 실행이 쉬운건 좋은데, 매번 import
와 배열을 만들어주는 것부터 시작한다면, 시간이 아깝죠? **code
**는 선택한 코드만 실행하는 기능도 있습니다.
우선 코드 창에서 ⌘A
로 전체 선택하고 명령 팔레트의 'Python: Run Selection/Line in Python Terminal' 또는 shift(⇧) enter(↩︎)
을 누르면 python
의 기본 인터렉티브 쉘을 통해서 코드가 실행됩니다.
결과는 파일을 실행하는 것과 같지만, 만일 개발하면서 코드를 수정하거나 추가했을 때 해당하는 부분만 선택해서 실행하면 개발시간을 단축할 수 있습니다.
# 3. 결론
저장할 때 코드를 자동 포맷팅 하거나 pylint, 코드 조각을 이용한 빠른 코딩 등 아직 소개하지 않은 기능이 더 많습니다. 앞으로 비주얼스튜디오 코드를 소개하는 글을 통해서 팁들을 공유하도록 하겠습니다.