코드가 하는 일을 변경하지 않고, 더나은 코드를 만드는것.
사람이 읽기 쉽고
(가독성)
, 유지보수가 용이하며(유지보수성)
, 의도한 대로 잘 동작하는 코드
가독성
은 의도를 전달하기 위한 코드의 성질이다. 코딩을 할 때 컨벤션을 지정하고, 그것을 따르며 주석을 달고, 변수,메서드,클래스,파일의 규칙성을 제공 한다면 의도를 보다 명확하게 전달 할 수 있을것이다.
다음의 코드가 있다고 보자.
해당 함수는 의도를 전달하기 안좋은 코드의 예시이다.
//A
function checkValue(str:boolean) {
if (str !== false)
retrun true
else;
return str;
}
해당 함수는 의도를 전달하기 안좋은 코드의 예시이다.
함수가 하는 일을 이름과 변수를 통해 알려주고, 리팩토링 한다면 B와 같은 코드 구조가 될 것이다.
//B
function isTrue(bool:boolean) {
if (bool)
return true
else
return false;
}
불필요한 코드를 개선하게 된다면 C
의 모습이 되어, 누구나 쉽게 의도를 파악할 수 있고, 단순하게 한가지 작업만을 하는 코드를 갖출 수 있게 된다.
//C
function isTrue(bool:boolean) {
return bool;
}
리팩토링을 해야 하는 이유