Files
my-switch-database/docs/convention.md
zenn 95d092fbc2 v2026.03.30-04 레포지토리 재연결
프로젝트 초기 상태를 기준으로 저장소를 재구성하고 업로드 규칙을 정비한다.
이미지 자산은 Git LFS를 통해 원격 용량 제한에 대응한다.

Made-with: Cursor
2026-03-30 12:38:03 +09:00

1.6 KiB

코딩 컨벤션

기본 원칙

  • 언어: 프론트엔드 UI 문구는 한국어/일본어 이중 언어를 유지한다.
  • 모듈: 브라우저 ES Module(type="module") 기반으로 파일을 분리한다.
  • 데이터: 게임 데이터는 코드 하드코딩 배열(db/*.db.js)로 관리한다.

네이밍 규칙

  • 파일명:
    • HTML: 화면 의미 중심 (index.html, nsw-detail.html)
    • 스크립트: 화면/도메인 단위 (nsw.js, nsw-detail.js)
    • 데이터: *.db.js 접미사 사용
  • 변수/함수:
    • camelCase 사용
    • 상태 객체는 의미가 드러나는 명칭 사용 (filterState)
    • 불리언 계열은 is/has/can 접두어 권장
  • 상수:
    • 변경 없는 매핑/사전형 데이터는 const 사용

코드 스타일

  • 들여쓰기: 공백 2칸
  • 세미콜론: 사용
  • 문자열: 기존 코드 흐름에 맞춰 작은따옴표 우선
  • DOM 접근:
    • 반복 접근 요소는 상단에서 캐싱
    • 이벤트 리스너는 기능별 초기화 함수로 묶어 관리

상태/로직 구성

  • 필터/정렬/언어 상태는 단일 상태 객체에서 관리한다.
  • 렌더링 파이프라인은 아래 순서를 유지한다.
    1. 데이터 포맷팅
    2. 필터링
    3. 정렬
    4. DOM 반영
  • 상세 페이지는 URL 쿼리(no)를 단일 진입점으로 사용한다.

문서/버전 규칙

  • 작업 후 docs/update.md, docs/todo.md, docs/history.md, docs/map.md, docs/spec.md, docs/convention.md를 최신화한다.
  • 커밋 메시지는 한국어로 작성한다.
  • 커밋 제목은 버전명 + 요약 형식으로 작성한다. (예: v2026.03.30-03 레포지토리 재연결)