개발자 변수명 짓기: Camel, Snake, Pascal Case 완벽 정리
카멜 케이스, 스네이크 케이스, 파스칼 케이스의 차이점과 언어별(Java, Python, JS) 권장 명명법을 정리했습니다. 더 읽기 좋은 코드를 작성하는 비결.
Q.개발자 변수명 짓기: Camel, Snake, Pascal Case 완벽 정리에 대해 알아보세요
카멜 케이스, 스네이크 케이스, 파스칼 케이스의 차이점과 언어별(Java, Python, JS) 권장 명명법을 정리했습니다. 더 읽기 좋은 코드를 작성하는 비결.
# 개발자 변수명 짓기: Case Styles 완벽 정리
개발자가 가장 어려워하는 일 1위가 "변수 이름 짓기"라는 농담이 있습니다. 하지만 이름보다 더 중요한 것은 "표기법(Naming Convention)"의 통일성입니다.
오늘은 개발계의 3대장 표기법인 CamelCase, snake_case, PascalCase를 비교하고, 언제 어떤 것을 써야 하는지 정리해 드립니다.
1. Camel Case (카멜 케이스)
낙타(Camel)의 등처럼 생겼다고 해서 붙여진 이름입니다.
첫 단어는 소문자로, 이어지는 단어의 첫 글자는 대문자로 씁니다.
- 예시:
myUserName,isUserLoggedIn,calculateTotalButton - 주 사용처:
- - JavaScript/TypeScript: 변수, 함수, 메소드
- - Java: 변수, 메소드
- - Swift, Kotlin: 변수, 함수
2. Snake Case (스네이크 케이스)
단어 사이를 언더바(_)로 연결하여 뱀(Snake)처럼 바닥에 붙어 기어가는 모양입니다.
모두 소문자를 쓰는 것이 일반적입니다.
- 예시:
user_name,is_logged_in,calculate_total - 주 사용처:
- - Python: 변수, 함수 이름
- - DB 컬럼명: SQL 데이터베이스의 필드명 (e.g.,
created_at) - - C/C++: 일부 표준 라이브러리 및 변수
> SCREAMING_SNAKE_CASE: 모두 대문자로 쓰고 언더바로 연결하는 방식은 주로 상수(Constant)를 정의할 때 씁니다. (예: MAX_COUNT, API_KEY)
3. Pascal Case (파스칼 케이스)
카멜 케이스와 비슷하지만, 첫 글자도 대문자로 시작합니다.
Upper Camel Case라고도 부릅니다.
- 예시:
MyUserName,UserService,ReactComponent - 주 사용처:
- - Classes (클래스): Java, Python, JS, C# 등 거의 모든 언어의 클래스명
- - React 컴포넌트:
Button,Header등 - - C#: 메소드 이름도 파스칼 케이스를 씁니다.
4. Kebab Case (케밥 케이스)
단어 사이를 하이픈(-)으로 연결합니다. 꼬치에 끼운 케밥 모양입니다.
- 예시:
user-profile,bg-blue-500,text-center - 주 사용처:
- - URL 슬러그:
/blog/naming-conventions - - CSS 클래스명:
.main-container - - HTML 속성:
data-user-id - - (프로그래밍 변수명으로는 거의 쓰지 않습니다. 하이픈이 뺄셈(-) 연산자로 인식되기 때문입니다.)
5. 왜 이것을 지켜야 하나요?
혼자 코딩할 때는 맘대로 해도 되지만, 협업에서는 "가독성"이 생명입니다.
Python 프로젝트에서 뜬금없이 camelCase 함수가 튀어나오면, 동료 개발자는 "이거 외부 라이브러리인가?" 하고 헷갈리게 됩니다.
✅ 자동 변환 도구 활용하기
이미 짜인 코드의 스타일을 바꿔야 한다면, Case Converter(대소문자 변환기)를 사용하세요.
snake_case로 작성된 긴 변수명 리스트를 한 방에 camelCase로 바꿀 수 있어 생산성이 크게 올라갑니다.
결론
- JS/Java: 변수는 camel, 클래스는 Pascal
- Python: 변수는 snake, 클래스는 Pascal
- 상수: 무조건 SCREAMING_SNAKE
- URL/CSS: kebab-case
이 규칙만 기억해도 코드가 훨씬 깔끔하고 전문적으로 보일 것입니다.