1. 코드 스타일
1.1 기본 원칙
- 🎨 별도 명시가 없는 각 언어의 스타일은 아래 가이드를 따릅니다:
- 🔍 각 프로젝트에 맞는 린터와 포맷터를 사용합니다:
- Java/Spring: CheckStyle, SpotBugs
- JavaScript/React: ESLint, Prettier
1.2 들여쓰기 규칙
- 🔢 기본적으로 들여쓰기는 공백 4칸
- 🔢 JSX의 경우 공백 2칸 허용
1.3 명명 규칙
Java/Spring
대상 |
규칙 |
예시 |
클래스 |
PascalCase |
UserService |
인터페이스 |
PascalCase |
UserRepository |
메소드 |
camelCase |
getUserById() |
변수 |
camelCase |
userId |
상수 |
UPPER_SNAKE_CASE |
MAX_RETRY_COUNT |
패키지 |
모두 소문자 |
com.example.project |
JavaScript/React
대상 |
규칙 |
예시 |
변수 |
camelCase |
userProfile |
상수 |
UPPER_SNAKE_CASE |
MAX_RETRY_COUNT |
함수 |
camelCase |
getUserInfo() |
컴포넌트 |
PascalCase |
UserProfile |
파일 |
PascalCase (컴포넌트), kebab-case (기타) |
UserProfile.jsx , api-service.js |
1.4 특별 규칙
- 🚫 중첩 삼항 연산자 사용 금지
- 📏 한 줄의 최대 길이는 120자
2. 주석 작성
2.1 Java/Spring 주석
/**
* 사용자 정보를 조회합니다.
*
* @param userId 조회할 사용자의 ID
* @return 사용자 정보 객체
* @throws UserNotFoundException 사용자를 찾을 수 없는 경우
*/
public UserInfo getUserInfo(Long userId) throws UserNotFoundException {
// 구현...
}
2.2 JavaScript/React 주석
/**
* 사용자 프로필 컴포넌트
*
* @param {Object} props - 컴포넌트 프로퍼티
* @param {string} props.userId - 사용자 ID
* @returns {React.ReactElement} 렌더링된 사용자 프로필
*/
function UserProfile({ userId }) {
// 구현...
}