본문 바로가기
PM으로 성장하기/기획 공부

분기 처리와 예외 처리

by 고양이 고씨 2022. 11. 18.
출처: flickr

기획을 하면서 자주 듣는 단어 중 하나가 분기처리와 예외처리이다. 위 개념과 관련하여 책, 아티클에서 읽은 내용과 프로그래밍 언어를 배우면서 알게 된 부분을 덧붙여서 정리해보았다. 그동안 분기 처리와 예외 처리는 기획 용어로만 생각했었는데, 원래는 개발 용어인 듯 하다.


분기처리

출처:https://www.steemzzang.com/zzan/@dreamisnowhere/5pmgpa

유형이 여러 가지가 있어서 하나의 페이지에 여러 유형이 나와야하는 경우를 말한다. 예를 들어 같은 상품이어도 회원 등급별로 상품 할인 가격이 다르게 보여져야 할 경우, 등급별로 노출할 할인 가격의 케이스를 만들어야 한다.
개발 관점에서는 코드를 선택적으로 실행하는 것을 말한다. 여러 가지 구현 방법이 있겠지만, if else 문과 swtich 문 등 으로 구현할 수 있다.

if (조건)
	조건이 참일 때 실행할 문장
else
	조건이 거짓일 때 실행할 문장


예외처리

정상적이지 않은 예외 상황에서 대응하도록 처리하는 것을 말한다. 예를 들어 리뷰 작성을 하면서 사진을 등록 할 때 용량을 초과하여 올릴 경우, 등록을 불가하게 하고 "이미지 용량이 초과되었습니다"라는 메시지를 띄우도록 한다.
개발 관점에서는 프로그램 실행 중 오류가 발생했을 때, 그 오류에 대해 대처하는 것을 말한다. 예외가 발생할 수 있다고 예상되는 경우, 해당 예외에 대처할 수 있는 코드를 미리 작성하여 비정상적인 종료를 막는다. try~catch 문 등을 통해 예외를 관리한다.

try {
	예외가 발생할 수 있는 부분
}
catch (eClass e) {
	발생한 예외를 처리하는 부분
}



본 글을 정리 하면서 분기처리와 예외처리를 왜 구분하는지에 대한 의문이 있었다. 그러다가 한 개발자 분이 남기신 글과 그 댓글을 통해 이해하게 되었다. 만약 데이터가 잘못되었을 때 분기처리로 해버리고 넘어간다면 해당 데이터를 가지고 처리하는 다음 로직에서 문제가 발생하여 더 큰 문제가 발생할 수 있다. 예외처리로 한다면 다음 로직 처리를 중단할 수 있다. 또한 예외처리 시 어디에서 문제가 발생했는지를 알려줄 수 있도록 코드를 짤 수 있기 때문에, 원인을 쉽게 확인할 수 있다.




* 도움 받은 글
1. 이미준(도그냥) 저, 현업 기획자 도그냥이 알려주는 서비스 기획 스쿨, 초록비책공방
2. 예외처리(exception handling), https://catsbi.oopy.io/92cfa202-b357-4d47-8de2-b9b3968dfb2e
3. 개발자의 분기처리, https://www.steemzzang.com/zzan/@dreamisnowhere/5pmgpa
4. 예외처리와 if문의 차이... https://okky.kr/articles/245058
5. 분기를 작성하는 법 n가지, https://chodragon9.github.io/blog/branch-n-case/



728x90

댓글