초코 공장

이제부터 가상의 초코 공장을 만들어 보면서 Python 프로그래밍을 배워보려고 한다. 그래서 본 강의의 이름도 초코PY 라고 지었다.

image-center

우리가 만들 초코공장에서는 매일 다음과 같은 일들이 일어난다.

  • 초코 공장에 매일 초코를 만들 원료 카카오가 배달된다.
  • 초코 공장은 매일 배달받은 카카오를 사용해서 초코를 만든다.
  • 초코 공장에서는 초코, 밀크 초코, 다크 초코, 아몬드 초코 등등 수 많은 초코가 만들어 진다.

또한…

  • 초코 공장의 정문 옆에는 공장에서 갓 만든 초코를 구입할 수 있는 매장이 있다.

프로젝트

초코PY 공장의 첫 삽을 떠 보자.

이제부터 우리가 작성할 프로그램이 들어있는 폴더(디렉터리)를 ‘ChocoPy 프로젝트’ 라고 부르겠다. 대부분의 IDE 에서 New Project 기능을 사용해 새 프로젝트를 만들 수 있다. Pycharm 의 경우 File > New Project 를 선택해 대화상자를 열고, Pure Python 을 선택한다.

image-center

프로젝트는 1개 이상의 어플리케이션이 들어있는 디렉터리 라고 생각하면 된다. 하나의 프로젝트에 2개~ 3개의 어플리케이션이 들어있는 경우도 있다.

주석

ChocoPy 프로젝트를 생성했는가? 그렇다면 파일 factory.py 를 새로 생성하자. 먼저 이곳이 초코를 만드는 공장이라는 것을 지나가는 사람들 (다른 프로그래머들)도 알 수 있도록 “초코 공장입니다.” 라는 안내 문구를 써 놓도록 하자.

# 이곳은 초코 공장입니다.

파이썬 프로그램에서 # 으로 시작하는 줄을 주석 이라고 부른다. 이 주석은 사람만 읽고, 프로그램은 무시하도록 약속되어 있다. 파이참을 사용하고 있다면 글씨가 마치 불이 꺼진 것 처럼 회색으로 나타나는 것을 볼 수 있을 것이다. 프로그램에 의해 무시된다는 것을 색깔로 표현해 놓은 것이다. 주석은 보통 다른 개발자(‘미래의 나’를 포함해서)를 위해 코드에는 드러나지 않은 배경지식을 설명하거나, 복잡한 코드를 쉽게 설명하기 위한 용도로 쓰인다.

방금 초코 공장입니다 라고 주석으로 써 놓았으니, 이 파일을 열어본 누구라도 “초코 공장을 구현해 놓은 코드구나” 라는 것을 알 수 있을 것이다.

주석의 용도

보통 주석을 사용하는 용도는 다음과 같다.

  • 프로그램 작성자의 의도를 나타낸다.
  • 프로그램 자체에는 드러나지 않는 배경지식을 나타낸다.
  • 장황한 코드가 정확히 무엇을 하기 위해 존재하는지 쉽게 설명한다.
  • 지금은 바빠서 못 했지만 나중에 해야할 작업을 TODO 주석으로 추가해 놓을 수 있다.

Ctrl + /

단순히 초코 공장이라고 써 놓으니 휑 해 보인다. 좀 더 설명을 추가해 보자.

# 이곳은 초코 공장입니다.
# 장소: 경기도 고양시 일산동구 장항동
# 영업시간: 평일 오전 5시 부터 오후 4시 까지
# 매장 영업시간: 평일 오전 10시 부터 오후 6시 까지
# 매일매일 신선한 카카오를 공급 받아 맛있는 초코를 만들어요!
# 부지면적: 000평...
# ...

혹시 위 내용을 타이핑 하면서 불편함을 느끼진 않았는가? 주석에 적을 내용이 아무리 길다 해도 우리는 매 줄 마다 # 으로 시작하는 것 말고는 주석을 만들 방법이 없다. 여기까지 읽고 아마도 이런 질문을 하고 싶은 분들도 있을 것이다.

주석이 길어지면 매 줄마다 # 과 스페이스바를 입력한 다음에 써야 한다는 거에요?
너무 번거롭지 않나요?

그렇다. 번거롭다. 여러 줄 주석을 허용하는 자바, 자바스크립트 같은 언어를 써 왔다면 더더욱 번거롭게 느껴질 것이다. (하지만 파이썬에는 multi-line 주석이 없다.) 세간의 개발자들이 이렇게 번거로운 것을 그냥 뒀을리가 없다.

‘개발환경 설치하기’ 에서 Pycharm 을 설치하였다면, 원하는 라인을 블록친 후에 Ctrl + / 을 눌러보자.(대부분의 IDE가 지원하는 기능이다.) 이는 블록쳐진 모든 라인을 전부 주석으로 바꾸는 단축키이다. 이 방법으로 주석을 작성하면 매우 간편하다. 앞으로 여러분이 자주 사용하게 될 단축키니 기억해 두자.

이처럼 기존의 코드를 주석으로 만드는 작업을 ‘주석처리’ 라고 부른다.

Updated:

Comments