나쁜 코드로 치르는 대가 - 매번 얽히고설킨 코드를 '해독'해서 얽히고 설킨 코드를 더한다.
시간이 지나면서 쓰레기 더미는 점점 높아지고 깊어지고 커진다. 청소할 방법이 없다. 불가항력이다.
나쁜 코드가 쌓일수록 팀 생산성은 떨어진다. 그러다가 마침내 0에 근접한다.
깨끗한 코드란?
- 논리가 간단해야 버그가 숨어들지 못한다.
- 의존성을 최대한 줄여야 유지보수가 쉬워진다.
- 오류는 명백한 전략에 의거해 철저히 처리한다.
- 성능을 최적으로 유지해야 사람들이 원칙 없는 최적화로 코드를 망치려는 유혹에 빠지지 않는다.
- 깨끗한 코드는 한 가지를 제대로 한다.
- 잘 쓴 문장처럼 읽힌다.
- 설계자의 의도를 숨기지 않는다. 명쾌한 추상화와 단순한 제어문으로 가득하다.
- 작성자가 아닌 사람도 읽기 쉽고 고치기 쉽다.
- 단위 테스트 케이스와 인수 테스트 케이스가 존재한다.
- 의미 있는 이름이 붙는다.
- 모든 테스트를 통과한다.
- 중복이 없다.
- 클래스, 메서드, 함수 등을 최대한 줄인다.
- 코드를 읽으면서 짐작했던 기능을 각 루틴이 그대로 수행한다면 깨끗한 코드
- 깨끗한 코드는 읽으면서 놀랄 일이 없어야 한다.
- 코드를 독해하느라 머리를 쥐어짤 필요가 없어야 한다.
- 명백하고 단순해 마음이 끌리는 코드
'클린코드' 카테고리의 다른 글
10. 클래스 (1) | 2022.10.29 |
---|---|
6. 객체와 자료구조 (1) | 2022.10.27 |
5. 형식 맞추기 (0) | 2022.10.26 |
3. 함수 (1) | 2022.10.24 |
2. 의미있는 이름 (0) | 2022.10.21 |
댓글