DOCS/book/300_architecture/reference/naming_conventions.md
Claude-51124 46baeaff91 docs: 개발 참조 문서 추가 (reference/)
- API 엔드포인트 정리 (api_endpoints.md)
- 인프라 정보 정리 (infrastructure.md)
- 환경변수 정리 (environment_variables.md)
- 배포 파이프라인 정리 (deployment_pipelines.md)
- 상수/설정값 정리 (constants.md)
- 네이밍 컨벤션 정리 (naming_conventions.md)
- 로깅 규칙 정리 (logging_rules.md)

목적: 개발 시 중복/오류 방지, 빠른 참조
모든 문서 100줄 이하 유지, 파일:줄번호 참조 사용
2025-12-06 13:28:46 +09:00

2.1 KiB

네이밍 컨벤션 참조

작성일: 2025-12-06 목적: 코드 일관성 유지, 가독성 향상


파일명

Python

  • router: {기능}_endpoint.py (예: message_endpoint.py)
  • service: {도메인}_{기능}.py (예: coldmail_filter.py)
  • state: {도메인}_repository.py (예: conversation_repository.py)

참고: DOCS/book/300_architecture/311_FastAPI_구조_원칙.md:53-63

디렉토리

  • router/: HTTP 엔드포인트
  • services/: 비즈니스 로직
  • state/: DB 접근 (Repository 패턴)
  • models/: ORM 모델
  • schemas/: Pydantic 모델

참고: DOCS/book/300_architecture/311_FastAPI_구조_원칙.md:27-51


변수명

Python

  • snake_case: 변수, 함수, 모듈
  • PascalCase: 클래스
  • UPPER_CASE: 상수

예시:

user_id = "uuid"  # 변수
def get_user_info():  # 함수
    pass
class UserService:  # 클래스
    pass
MAX_RETRIES = 3  # 상수

API 엔드포인트

경로 규칙

  • kebab-case: URL 경로 (예: /api/intent-review/queue)
  • RESTful: 리소스 중심 (예: /api/events/{event_id})

참고: rb8001/app/router/intent_review_endpoint.py:33


데이터베이스

테이블명

  • snake_case: 소문자, 언더스코어 (예: conversation_log)
  • 복수형: 컬렉션 의미 (예: users, conversations)

컬럼명

  • snake_case: 소문자, 언더스코어 (예: user_id, created_at)
  • UUID: id 또는 {entity}_id (예: user_id)

참고: DOCS/book/300_architecture/database/tables.md


환경변수

명명 규칙

  • UPPER_SNAKE_CASE: 대문자, 언더스코어
  • 명확한 의미: DATABASE_URL, JWT_SECRET_KEY

참고: DOCS/book/300_architecture/reference/environment_variables.md


서비스명

컨테이너명

  • kebab-case: 소문자, 하이픈 (예: skill-slack, robeing-monitor)

서비스 ID

  • 소문자: rb8001, skill-email

참고: AGENTS.md:78-81


업데이트: 컨벤션 변경 시 즉시 반영