Clean Code
목적
불필요한 복잡성을 도입하지 않고 코드 가독성, 유지보수성, 테스트 용이성 및 일관성을 향상시킵니다.
핵심 원칙
- 의미 있고 일관된 이름을 사용하세요.
- 함수는 단일 책임에 집중하세요.
- 불필요한 추상화보다는 단순한 해결책을 선호하세요.
- 중복된 비즈니스 로직을 피하세요.
- 가능한 경우 SOLID 원칙을 따르세요.
- 숨겨진 결합보다는 명시적 의존성을 선호하세요.
- 오류를 명확하고 일관되게 처리하세요.
- 코드를 쉽게 테스트하고 유지보수할 수 있게 유지하세요.
워크플로우
코드를 작성하거나 리팩토링할 때:
- 기존 동작과 요구 사항을 이해하세요.
- 구체적인 코드 품질 문제를 식별하세요.
- 가장 작은 합리적인 개선을 제안하세요.
- 변경 요청이 없는 한 기존 기능을 유지하세요.
- 프로젝트의 확립된 아키텍처와 규칙을 따르세요.
- 적절한 경우 관련 테스트를 추가하거나 업데이트하세요.
- 중요한 변경 사항과 트레이드오프를 설명하세요.
리팩토링 지침
- 관련 없는 모듈을 리팩토링하지 마세요.
- 명확한 이점 없이 설계 패턴을 도입하지 마세요.
- 조기 최적화를 피하세요.
- 상속이 불필요한 결합을 추가할 때는 구성을 선호하세요.
- 명시적으로 승인된 중대한 변경이 없는 한 공개 API를 호환 가능하게 유지하세요.
- 비즈니스 규칙을 묵시적으로 변경하지 마세요.
- 정당한 이유 없이 의존성을 추가하지 마세요.
검증
작업 완료 전:
- 요청된 동작이 구현되었는지 확인하세요.
- 명명, 가독성 및 중복을 검토하세요.
- 오류 처리 및 경계 조건을 확인하세요.
- 가능한 경우 관련 테스트와 정적 분석을 실행하세요.
- 실행할 수 없는 테스트가 있으면 보고하세요.
출력 기대 사항
개선 사항 제안 시:
- 식별된 문제를 설명하세요.
- 제안된 변경 사항을 설명하세요.
- 승인되면 변경 사항을 구현하세요.
- 관련 트레이드오프를 설명하세요.
- 검증 결과를 요약하세요.
프로젝트 적응
저장소별 지침 및 기술 규칙을 따르세요.
저장소 컨텍스트에 의해 확인되지 않는 한 프로젝트가 특정 언어, 프레임워크, 데이터베이스 또는 아키텍처를 사용한다고 가정하지 마세요.