로버트 C 마틴의 클린코드 책 발췌
1. 우아한 코드 : 보기에 즐거운 코드 (가독성이 좋은 코드)
2. 효율적인 코드(속도, CPU, RAM)
3. 세세한 부분까지 철저한 오류처리가 된 코드
4. 한가지를 잘 하는 코드
5. 다른 사람이 고치기 쉬운 코드
6. 의미있는 이름이 있는 코드
7. 의존성이 최소인 코드
8. 모든 테스트(단위테스트, 인수테스트)를 통과
9. 중복이 없는 코드
- 추상 메서드
- 추상 클래스
10. 시스템 내 모든 설계 아이디어를 표현한다.
- 의미있는 이름 같이
- 메서드 추출 리펙토링
- 기능을 기술하는 메소드 하나 + 기능을 수행하는 메서드 여러개 로 메서드를 나누는 리펙토링
11. 코드를 읽으면서 다음 내용이 짐작이 되고, 짐작한 내용이 읽히는 코드
보이스카우트 규칙
>> 체크아웃할 때 보다 조금 더 클린한 코드를 체크인한다면, 코드는 절대 더러워지지 않는다.