1.5 KiB
1.5 KiB
name, description
| name | description |
|---|---|
| coding-common | 세 클라이언트(backend/frontend/flutter) 공통 코딩 규칙 — 주석 언어, 타입 정책, 린트, 순수 유틸 분리, 절대경로 alias. |
공통 코딩 규칙
- 모든 코드 주석은 한국어로 작성
- 웹(
frontend)·서버(backend)는 100% TypeScript, 모바일(flutter)은 Dart Sound Null Safety 준수 - 컴파일러/린터 Warning 방치 금지 — 커밋 전 각 프로젝트
lint/analyze통과 - 유틸 함수는 순수 함수로 분리 — TS는
shared/utils/, Dart는core/utils/ - 매직 넘버·하드코딩 문자열 지양 → 상수 또는 환경변수로 분리
- 절대경로 alias 사용 (TS
@/, Dartpackage:), 깊은 상대경로(../../) 지양
네이밍 규약
| 대상 | 규칙 | 예 |
|---|---|---|
| TS 파일(일반) | kebab-case | user.store.ts, use-api.ts / 기존 composable 은 useApi.ts 형태 유지 |
| Vue 컴포넌트 파일 | PascalCase | BaseButton.vue, UserCard.vue |
| Dart 파일·디렉터리 | snake_case | dio_client.dart, user_repository.dart |
| 클래스/타입 | PascalCase | UserModel, TransformInterceptor |
| 변수/함수 | camelCase (Dart 포함) | getUser, isLoggedIn |
| 상수 | TS UPPER_SNAKE 또는 모듈 상수, Dart lowerCamel |
MAX_RETRY, defaultTimeout |
| 에러 코드 | DOMAIN_NNN |
AUTH_001, VAL_001 (error-codes) |