더북(TheBook)

오류 프로그램의 편집, 컴파일, 인터프리트 과정의 차이가 모호해지기 쉽지만, 프로그래밍을 공부할 때는 각 단계를 구분해야 발생하는 오류의 영향을 잘 이해할 수 있다. 이번 절 뒤에 나오는 Q&A 절에서는 여러 오류의 사례를 볼 수 있다.

이메일 메시지를 작성하면서 철자와 문법 오류를 수정하는 것과 마찬가지로 프로그램을 작성할 때도 신중히 검토하면 오류를 대부분 피할 수 있다. 컴파일(compile-time) 오류는 파이썬이 프로그램을 컴파일할 때 발생한다. 컴파일 오류가 발생하면 프로그램을 변환할 수 없으며, 파이썬 컴파일러는 SyntaxError를 발생시켜 컴파일 오류를 알려준다. 그 외 실행(run-time) 오류는 파이썬이 프로그램을 인터프리트할 때 발생한다. 예를 들어 helloworld.py에서 import stdio 문장을 빼먹으면 실행 시 파이썬 인터프리터가 NameError를 발생시킨다.

일반적으로 프로그램에 있는 오류는 버그(bug)라고 하며, 프로그래머의 존재를 위협한다. 때때로 오류 메시지는 이해하기 힘들거나 오해를 불러일으키므로 오류의 원인을 찾아내기 어렵다. 프로그래밍하면서 가장 먼저 얻는 기술 중 하나는 오류를 찾아내는 기술이지만, 오류를 발생시키지 않도록 코딩할 때 주의하는 방법도 배우게 된다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.