예외 처리 상황이 발생했을떄, 일반적으로 어떻게 처리하나요?
321
작성한 질문수 2
예외 처리 상황이 발생하면, catch block으로 오는 것 까지는 이해가 가는데, 실제 프로그램에서, 어떤 식으로 처리를 하나요?
코드 양이 많다면, try-catch 뒤에 나오는 코드에서, 앞에 try-catch 코드가 정상적으로 가동했다는 가정을 하고, 코드들이 짜여졌을터인데, 단순히 에러가 났다는 표시만 하면, 뒤에서 계속적으로 에러가 나서 프로그램 전체가 다운되는 결과가 생길수 있을것 같은데... 이런 상황을 실제에서는 어떻게 처리를 하는지 궁금합니다.
물론 어떤 에러가 생길지 미리 정확히 예측을 한다면, 모든 에측 상황을 정해서 거기에 맞는 대응을 하면 좋겠지만, 그렇지 않은 경우에라도, 관련 부분에 에러가 날 수는 있더라도, 그 에러로 인해서 전체 프로그램이 다운 되면 않될것 같은데, 이런 경우는 어떻게 일반적으로 처리를 하는지가 궁금합니다.
답변 2
1
맞습니다. 말씀하신 내용이 사실 상당히 중요한 부분중에 하나 입니다.
코드를 작성할때 try-catch 문은 정확하게 예상 가능한 경우가 아닌 책임지지 못할곳에서는 작성하지 않는게 좋습니다. 그만큼 원래 코드를 제대로 작성해야만 하는게 원칙입니다. 개발자는 자기 코드에 대한 책임이 있습니다. 자기 스스로도 예측하지 못하는 에러가 나는 프로그램을 작성해서는 안됩니다. 그건 책임전가의 문제로밖에 생각되지 않습니다.
파이썬의 try-catch 문은 아주 강력합니다. 그렇기 때문에 절대로 남발되서는 안되는 부분입니다. 고급언어일수록 사용자 편의가 커져서 오류처리가 강력해지고 유연해지는 특성이 있습니다만 이를 다른 관점에서 생각해보면 프로그램이 거대해지고 복잡해진 경우에 try-catch 같은 예외처리를 남발하게 되면 실제 어디서 어떤 문제가 발생했는지를 찾기 힘들어지게 됩니다.
38강 = 연산자 더하고 빼기
0
59
2
주석처리
0
116
1
함수의 파라미터값 msg
0
154
1
강의자료 이미지 안나옴
0
238
3
강의자료 질문 두번째
0
164
3
강의자료 관련 질문
0
115
1
파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.
0
234
1
소수 너무 어려워요
0
244
1
imagefont 함수 사용
0
238
1
pylint
0
355
1
add 함수 문의 ㅠㅠ
0
280
1
형식 문의드립니다.
0
208
1
변수 명을 왜 src, tar로 하셨는지 궁금합니다.
0
601
1
숫자야구 코드를 짜 봤는데 뭔가 이상합니다.
0
249
1
zsh: command not found: pylint
0
268
1
텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ
0
545
1
질문드립니다.
1
373
2
list.reverse() 출력에 대해서 질문있습니다.
1
431
1
데코레이터 함수 및 동작시간 질문입니다.~
1
322
2
opencv 사용하면서 궁금한점 (해상도)
1
780
1
질문드립니다.
1
298
1
아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?
1
444
1
크롤링안되는 현상 문의 드립니다.
1
420
1
파이썬 크롤링 관련 문의
1
276
1





