유지 보수성
기존의 코드 설계를 손상시키거나 새로운 버그를 발생시키지 않고 빠르게 코드를 수정하거나 추가할 수 있는 상태를 말한다.
가독성
"컴퓨터가 이해할 수 있는 코드는 바보라도 작성할 수 있다. 사람이 이해할 수 있는 코드를 작성해야한다."
- 코드의 명명
- 주석
- 함수길이
- 모듈 구분
- 코드의 높은 응집도와 낮은 결합도
확장성
기존의 코드를 약간 수정하거나 전혀 수정하지 않고도 확장을 통해 새로운 기능을 추가하는 것
- 코드를 작성할 때 새로운 기능을 추가할 수 있는 여지가 설계 당시부터 고려되어 있어 확장용 인터페이스가 이미 존재함을 의미
유연성
코드의 확장과 재사용이 용이하고 사용성이 높을 경우를 말한다.
간결성
KISS원칙 : 코드를 가능한 단순하게 유지
재사용성
반복적인 코드 작성을 최소화하고 기존 코드를 재사용하는 것
테스트 용이성
코드 품질 수준 측면을 정확하게 반영한다.