오류를 숨기지 않음

2025. 2. 12. 01:12·📚 개발자의 서재/Good Code, Bad Code

 

해당 포스팅은 톰롱의 Good Code, Bad Code(P. 88~94)를 읽고 정리한 글입니다.

 

오류를 숨기지 않음

오류를 숨기는 것은 복구할 수 있는 오류와 복구할 수 없는 오류 모드에 문제를 일으킨다.

  • 호출하는 쪽에서 복구하고자 할 수도 있는 오류를 숨기면, 호출하는 쪽에서 오류로부터 복구할 수 있는 기회를 없애는 것이다. 
  • 개발팀이 그 오류에 대해 전혀 알지 못할 수도 있다는 것을 의미한다.
  • 실제로 코드는 동작하지 않기 때문에 잘못된 정보를 출력하거나 일부 데이터를 시키거나 작동을 멈출 수 있다.

 

오류를 숨길 수 있는 방법

이러한 기술 중 일부는 다른 상황에서 유용하지만 오류 처리에 있어서는 일반적으로 모두 바람직하지 않다.

  1. 기본값 / Null 객체 반환
  2. 아무것도 하지 않음
    1. 오류 신호 보내지 않기
    2. 오류를 적극적으로 억제 (try - catch ans)

 

오류 전달 방법

오류가 발생하면 일반적으로 더 높은 계층으로 오류를 알려야 한다.

 

  • 복구할 수 없는 오류: 프로그램의 상위 계층에서 실행을 중지하고, 오류를 기록하거나 전체 프로그램의 실행을 종료해야 한다.
  • 복구 가능한 오류: 즉시 호출한 측에 오류를 알리고, 정상적으로 처리할 수 있도록 해야 한다.

오류 처리 기능에 따른  오류를 알리는 방법

명시적 방법 / 암시적 방법

 

  • 명시적 방법: 호출하는 측이 오류 발생 가능성을 명확히 인지하도록 한다.
  • 암시적 방법: 호출하는 측에서 오류를 직접 처리할 필요가 없도록 하여 부담을 줄인다.

 

 

 

저작자표시 비영리 변경금지 (새창열림)

'📚 개발자의 서재 > Good Code, Bad Code' 카테고리의 다른 글

오류전달기법-2  (0) 2025.02.13
오류 전달 기법 - 예외  (0) 2025.02.12
견고성 vs 실패  (1) 2025.02.10
Chapter 4 오류 - 복구 가능성  (0) 2025.02.09
코드 계약 - 체크와 어서션  (0) 2025.02.08
'📚 개발자의 서재/Good Code, Bad Code' 카테고리의 다른 글
  • 오류전달기법-2
  • 오류 전달 기법 - 예외
  • 견고성 vs 실패
  • Chapter 4 오류 - 복구 가능성
l'avenirJun
l'avenirJun
  • l'avenirJun
    오늘도 꾸준히 개발
    l'avenirJun
  • 전체
    오늘
    어제
    • 분류 전체보기 N
      • 📚 개발자의 서재 N
        • 객체지향의 사실과 오해
        • Good Code, Bad Code
        • 도메인 주도 개발 시작하기 N
      • 🔧 트러블 슈팅
      • Java
      • Spring
      • 운영체제
        • 공룡책 학습
      • 알고리즘
      • GIT
      • 면접 지식
      • Spring 단기심화 2기
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    매핑 구현
    코딩트리조별과제
    메시지
    추상화
    모듈화
    객체지향의 사실과 오해
    도메인 주도 개발 시작하기
    표현 영역
    good code bad code
    유스케이스
    specification
    코딩테스트
    오블완
    책임-주도 설계
    타입
    코드트리
    객체
    가독성
    애그리거트
    협력
    코드 계약
    캡슐화
    리포지터리
    DIP
    티스토리챌린지
    인터페이스
    역할
    책임
    도메인 모델
    애그리거트 루트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
l'avenirJun
오류를 숨기지 않음
상단으로

티스토리툴바