IT/리팩토링

[리팩토링] 직관적 임시변수 사용

상쾌한기분 2019. 10. 25. 11:18
반응형

사용된 수식이 봅잡할때 수식의 결과나 일부분을 직관적 이름의 임시변수에 대입


위에 조건문과 같은 경우에 논리조건문이 복잡해져서 코드를 보는 사람이 한번에
이해 하기 어려울때 사용하지만, 임시변수를 사용하면 메소드가 복잡해진다.
따라서, 더 좋은 방법이 없는지 생각해본 뒤 사용하자.

 

변경 전

if ( (platform.toUpperCase().indexOf('MAC') > -1)
	&& (browser.toUpperCase.indexOf('IE') > -1)
	&& wasInitialized() && (resize > 0) ) 
{
	// code blah blah
}

 

변경 후

boolean isMac = platform.toUpperCase().indexOf('MAC');
boolean isIE = browser.toUpperCase.indexOf('IE');
boolean isInit = wasInitialized();
boolean wasResize = resize > 0;

if ( isMac && isIE && isInit && wasResize )
{
	// code blah blah
}
728x90
반응형