개발자

try-catch를 다들 어디에 작성하시나요?

2023년 05월 11일조회 1,384

아래 코드에 자세한 내용 적었습니다. 1번, UI와 가까운 쪽에 작성한다 2번, 데이터 가져올 때 작성한다 이 중에서 어떻게 하시는지 궁금해요!

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 5

인기 답변

김형준님의 프로필 사진

데이터 API와 가까운 쪽에 주로 선언합니다. (2번) 2가지 관점에서 이렇게 하고 있어요. 첫째로 예외 처리는 발생 지점과 최대한 가까워야 관리하기 편해서입니다. 예외 발생하는 로직과 처리하는 로직의 거리가 멀어지면 코드 가독성이 떨어지는 문제도 있고 사이드 이펙트가 발생할 확률이 높아지는 것 같아요. 두 번째는 UI 로직에서 데이터 로직을 최소화하기 위해서입니다. UI는 화면을 그리는 로직에 집중하고 처리된 데이터 (props로 전달 받는 것 처럼) 을 사용만 하는 게 수정하기 좋아요. (Single Responsibility Principle에 따라 Component는 데이터를 어떻게 그릴지에 집중, API 함수는 데이터를 어떻게 받아올지에 집중)

암소메애님의 프로필 사진

둘다요.

최경훈님의 프로필 사진

서버에서 받는 데이터 처리할때는 웬만하면 다 합니다. 예제중에서는 2번일때가 어울리겠네요. UI랑 데이터 동작은 분리시키는 편입니다.

류민우님의 프로필 사진

데이터 요청하는 쪽에 주로 사용하고 있습니다. API를 사용해서 비동기로 데이터를 받아오려면 async-await을 사용해야 하는데 이를 위해서 try-catch로 묶어줘야 에러 핸들링이 가능해지거든요….

커리어리 AI 봇님의 프로필 사진

try-catch 블록을 어디에 작성하는 것이 좋은지는 상황에 따라 다를 수 있습니다. 일반적으로는 예외가 발생할 것으로 예상되는 부분에서 try-catch 블록을 작성하는 것이 좋습니다. 1번의 경우, UI와 가까운 쪽에서 try-catch 블록을 작성하는 것은 UI 이벤트 처리나 API 요청과 같은 상황에서 예외 처리를 하는 것을 의미합니다. 이는 사용자와의 상호작용이 있는 부분이므로 예외 발생 시 사용자에게 적절한 에러 메시지를 보여주거나 대체 데이터를 제공하는 등의 처리를 할 수 있습니다. 2번의 경우, 데이터를 가져오는 부분에서 try-catch 블록을 작성하는 것은 API 호출이나 데이터베이스 조회 등의 작업에서 예외 처리를 하는 것을 의미합니다. 데이터 가져오기 과정에서 예외가 발생할 수 있으므로 이를 적절히 처리하고 에러 핸들링을 할 수 있습니다. 위의 코드 예시에서는 1번과 2번 모두 try-catch 블록을 사용하여 예외 처리를 하고 있습니다. 데이터를 가져오는 과정에서 예외가 발생하면 catch 블록에서 handleError 함수를 호출하고 적절한 처리를 하고 있습니다. UI와 가까운 쪽에서 예외 처리를 하거나 데이터를 가져오는 과정에서 예외 처리를 하는 것은 일반적으로 좋은 접근 방식입니다. 하지만 상황에 따라 예외 처리를 다른 위치에 작성해야 할 수도 있으므로 문제가 발생하는 부분에 맞게 유연하게 작성하시면 됩니다.

커리어리 AI 봇의 답변을 평가해 주세요!

이영준님의 프로필 사진

이영준

다시 iOS하고 싶은 개발자2023년 06월 23일

이건 상황에 따라 다름 오류를 무시하고 싶을 수도 있고 특정 오류인 경우 결과에 추가하거나 다른 오류로 재생성할 수도 있고 오류를 ui까지 던져서 ui에 오류정보를 표시하게 할수도 있는 것임

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!