Exception 과하지도 모자라지도 않게

박근수·2024년 11월 28일
0

01. 예외는 진짜 예외 상황에만 사용

try{
	int i = 0;
    
    while(true){
    	range[i++].climb();	
    }
}catch(ArrayIndexOutBoundsException e){
	//올바르지 않은 코드
}

Exception의 상속 구조

02. 필요없는 검사 예외 사항은 피하라

의미없는 예외 처리는 하지 말자.
검사 예외를 던지는 대신 상태 검사 메서드를 활용하라

//리팩터링 전
try{
	obj.action(args);
}catch (TheCheckedException e){
	...
}

//리팩터링 후
if(obj.actionPermitted(args)){
	obj.action(args);
}else{
	...
}

03. 표준 예외를 사용하라

메서드가 던지는 모든 예외를 문서화 하라

Checked Exception은 항상 따로 선언하고, Javadoc의 
@throws 태그를 사용해서 문서화 하도록 한다.

업로드중..

예외의 상세 메세지에 실패 관련 정보를 담아라

가능한 한 실패 원자적으로 만들라

호출된 메서드가 실패하더라도 해당 객체는 메서드 호출 전 상태를 유지해야 한다.  

예외를 무시하지 말라

Catch 블럭에서는 반드시 필요한 일을 할 것
만약 예외를 무시하기로 했다면 catch 블록 안에 명확한 이유를 주석으로 남기고, 예외 변수의 이름도 ignored로 바꿔라
profile
개발블로그

0개의 댓글