-
리팩토링 : Replace Nested Conditional with Guard Clauses리팩토링 2013. 2. 11. 09:00조건메소드가 정상실행경로가 명확하지 않은 조건별 행동을 하고 있다면적용모든 특정 경우에 보호구문(Guard Clause)을 사용하시오.적용전
double getPayAmount() { double result; if (_isDead) result = deadAmount(); else { if (_isSeparated) result = separatedAmount(); else { if (_isRetired) result = retiredAmount(); else result = normalPayAmount(); }; } return result; };
적용후double getPayAmount() { if (_isDead) return deadAmount(); if (_isSeparated) return separatedAmount(); if (_isRetired) return retiredAmount(); return normalPayAmount(); };
참조
http://www.refactoring.com/catalog/replaceNestedConditionalWithGuardClauses.html
'리팩토링' 카테고리의 다른 글
리팩토링 : Replace Parameter with Method (0) 2013.02.13 리팩토링 : Replace Parameter with Explicit Methods (0) 2013.02.12 리팩토링 : Replace Method with Method Object (0) 2013.02.10 리팩토링 : Replace Magic Number with Symbolic Constant (0) 2013.02.09 리팩토링 : Replace Iteration with Recursion (0) 2013.02.08 댓글