기존에는 null체크를 해서 없으면 바로 return으로 함수(메소드)를 탈출해 버렸으나...
내가 범접하기 힘긴 높은 내공을 지닌 그룹장님께서 return으로 탈출하면 가독성이 떨어져
문제점을 찾기 힘들어 진다는 충격적인(??) 이야기를 들었다.
일단 화면출력을 위한 가공을 위한 기능에서는 null이냐 '' 빈값이냐는 큰 의미가 없다.
오히려 에러를 낼수 있는 잠재문제을 가질뿐....
아무튼 return문이 문제가 된다고 해서 최근 쓰는 코딩스타일...
<추천 코드형식 - 현재 쓰는 형식>
public static String formatHeadstr(String head, String str)
{
String result = "";
if ( ( str == null ? "" : str ).length() > 0 )
{
result = (head==null?"":head) + str ;
}
return result;
}
{
String result = "";
if ( ( str == null ? "" : str ).length() > 0 )
{
result = (head==null?"":head) + str ;
}
return result;
}
<테스트결과>
System.out.println( "[1]" + formatHeadstr( "작성자 : " , "정민철") );
System.out.println( "[2]" + formatHeadstr( "작성자 : " , "") );
System.out.println( "[3]" + formatHeadstr( "작성자 : " , null) );
---------------------------------------------------------------------------------------
[1]작성자 : 정민철
[2]
[3]
System.out.println( "[2]" + formatHeadstr( "작성자 : " , "") );
System.out.println( "[3]" + formatHeadstr( "작성자 : " , null) );
---------------------------------------------------------------------------------------
[1]작성자 : 정민철
[2]
[3]
개발하다보면
null처리나 기타 예외처리에 신경을 쓰다보면 많이 반복되는걸 느낀다...
습관으로 피할수밖에...