
474 Chapter 11
소란 피우지 마세요
예외를 조용히 처리하세요
진심이에요? ‘log_request’에서 일으킨 예외를
조용히 처리하라고요? 모든 게 잘되길 빌면서 예외를
무시하는 것과 뭐가 다르죠?
아니요. 여기서
‘
조용히
’
는
‘
무시
’
하라는 의미가 아니에요.
조용히 예외를 처리한다는 것은 웹앱 사용자가 알지
못하게 처리하라는 의미예요. 현재는 예외가 발생하면
웹앱이 크래시되면서 혼란스럽고 무시무시해 보이는
페이지를 사용자에게 보여주고 있으니까요.
log
_
request
호출이 실패한 것은 우리가 신경 써야
할 문제일 뿐 사용자는 아무 관련이 없어요. 따라서
log
_
request
에서 발생한 에러를 사용자는 모르게
하고 우리는 알아차릴 수 있도록 처리해야 합니다.
try/except를 사용하면 코드가 더 읽기 어려워지고 이해하기도 힘들어지지 않나요?
사실입니다. 예제에서도 볼 수 있었듯이 처음에는 세 행으로 이루어진 코드가 try/except 때문에 일곱 행이 되었는데 실제 프로그램
동작은 바뀐 게 없으니까요. 하지만 잠재적으로 발생할 수 있는 예외로부터 코드를 보호하는 것은 중요한 일입니다. try/except 만큼 잠재적
에러로부터 코드를 잘 보호하는 기술은 없습니다. 시간이 좀 지나면 우리 두뇌는 try 스위트에 있는 실제 동작을 하는