Skip to main content

좋은 코드란 무엇일까?

1. 읽기 쉬운 코드 (Readable Code)

  • 명확한 네이밍: 변수, 함수, 클래스 이름을 직관적이고 쉽게 이해할 수 있게 작성.
  • 주석과 Docstring: 코드의 의도를 명확하게 표현.
  • 코드의 흐름: 코드의 구조가 논리적이고 규칙적이어야 함.
  • 함수나 클래스의 이름: 기능을 명확하게 표현해야 함.

2. 재사용 가능한 코드 (Reusable Code)

  • 재사용 가능성:반복되는 기능에 대해 함수나 클래스로 만들어 재사용 가능하게 설계.
  • 코드의 의존성: 코드가 한곳에 과도하게 의존하지 않도록 설계 (예: 글로벌 변수를 최소화).
  • 설정 파일: 반복되는 설정이나 값을 관리.

3. 확장 가능성 (Extensibility)

  • 새로운 기능: 추가하거나 변경하기 쉽게 설계.
  • SOLID 원칙: 소프트웨어 설계 원칙을 준수.

4. 효율성 (Efficiency)

  • 성능: 성능을 최적화하면서 지나친 복잡성을 피함(아주 근소한 차이의 성능이라면 readability가 더 중요함).
  • 비동기 처리: 비동기 처리와 최적화된 알고리즘 활용.

5. 테스트 가능성 (Testability)

  • 단위 테스트와 통합 테스트: 쉽게 테스트 할 수 있도록 구성.

6. 보안 (Security)

  • 사용자 데이터 보호: 사용자 데이터를 보호하고 민감한 정보를 암호화.
  • SQL 인젝션, XSS 등의 보안 위협 대비: 보안 위협을 대비.

7. 일관성 (Consistency)

  • 코딩 스타일 가이드: PEP 8 준수.
  • 자동화 도구: precommit을 통해 코드 스타일을 자동으로 검사.
  • 프로젝트 전반에서 일관된 스타일 유지.

8. 문서화 (Documentation)

  • README 파일 및 API 문서: 코드의 사용 방법 설명.
  • 설치 및 구성 방법: 명확히 문서화.

9. 운영 환경에 적합 (Production-ready)

  • 운영 환경에서 안정적으로 동작할 수 있는 설정 제공.
  • : Kubernetes 설정 파일, Helm 차트를 통한 배포 관리.