728x90
1. 내용이 낡은 주석
처음 개발 내용과 달리 이후에 사양이 변경되면서 주석까지 유지 보수하지 못한 경우입니다. 주석이 낡아 버리지 않게, 구현을 변경할 때 주석도 함께 변경하는 것이 좋습니다.
1) 주석은 실제 코드가 아님을 이해하기
2) 로직의 동작을 설명하는 주석은 낡기 쉽다
코드의 동작을 그대로 설명하는 주석은 코드를 변경할 때마다 주석도 변경해야 할 것입니다. 만약 실수로 변경하지 않으면, 로직과 주석 사이에 괴리가 생깁니다.
2. 주석 때문에 이름을 대충 짓는 예
메서드는 주석으로 설명을 추가하기보다, 메서드의 이름 자체를 수정하는 것이 좋습니다.
메서드의 가독성을 높이면, 주석으로 설명을 추가하지 않아도 됩니다. 그러면 내용이 낡은 주석이 생길 가능성도 줄어듭니다.
3. 의도와 사양 변경 시 주의 사항을 읽는 이에게 전달하기
코드는 언제 어떠한 목적으로 읽힐까요? 기본적으로 유지 보수할 때와 사양을 변경할 때 읽힙니다.
코드 유지 보수 시 읽는 사람이 주의를 기울여야 하는 부분은 '이 로직은 어떤 의도를 갖고 움직이는가'입니다.
그리고 사양을 변경할 때 읽는 사람이 주의를 기울여야 하는 부분은 '안전하게 변경하려면 무엇을 주의해야 하는가'입니다.
class Member{
private final States states;
// 고통받는 상태일 때 true를 리턴
boolean isPainful(){
// 이후 사양 변경으로 표정 변화를
// 일으키는 상태를 추가할 경우
// 이 메서드에 로직을 추가합니다.
if(states.contains(StateType.poison) ||
states.contains(StateType.paralyzed) ||
states.contains(StateType.fear)){
return true;
}
return false;
}
}
4. 주석 규칙 정리
규칙 | 이유 |
로직을 변경할 때는 반드시 주석도 함께 변경해야 함. | 주석을 제대로 변경하지 않으면, 실제 로직과 달라져 주석을 읽는 사람에게 혼란을 줌. |
로직의 내용을 단순하게 설명하기만 하는 주석은 달지 않음. | 실질적으로 가독성을 높이지 않고, 주석 유지 보수가 힘듦. 결과적으로 내용이 낡은 주석이 될 가능성이 높음. |
가독성이 나쁜 로직에 설명을 추가하는 주석은 달지 않음. 대신 로직의 가독성을 높여야함. | 주석 유지 보수가 힘들고, 갱신되지 않아 낡은 주석이 될 가능성이 높음. |
로직의 의도와 사양을 변경할 때 주의할 점을 주석으로 달아야 함. | 유지 보수와 사양 변경에 도움이 됨. |
5. 문서 주석
문서 주석이란 특정 형식에 맞춰 주석을 작성하면, API 문서를 생성해 주석나 코드 에디터에서 주석의 내용을 팝업으로 표시해 주는 기능입니다.
예시 - Java의 Javadoc, C#의 Documentation comments, 루비의 YARD
'일상 > 레벨업 독서' 카테고리의 다른 글
[내 코드가 그렇게 이상한가요?] 13장 모델링:클래스 설계의 토대 (1) | 2024.11.15 |
---|---|
[내 코드가 그렇게 이상한가요?] 12장 메서드(함수):좋은 클래스에는 좋은 메서드가 있다 (0) | 2024.11.15 |
[내 코드가 그렇게 이상한가요?] 10장 이름 설계:구조를 파악할 수 있는 이름 (3) | 2024.11.14 |
[내 코드가 그렇게 이상한가요?] 9장 설계의 건전성는 여러 악마 (2) | 2024.10.28 |
[내 코드가 그렇게 이상한가요?] 8장 강한 결합: 복잡하게 얽혀서 풀 수 없는 구조 (1) | 2024.10.27 |