네이밍 규칙 가이드

camelCase vs snake_case

camelCase는 구분자를 제거하고 이후 단어를 대문자로 시작하며, snake_case는 소문자 단어를 밑줄로 구분합니다. 적합한 형식은 언어, API, DB 규칙에 따라 달라집니다.

작성자 Camel Case Converter 편집팀게시 2026. 9. 12.마지막 검토

빠른 비교

차이camelCasesnake_case
예시userProfileImageuser_profile_image
주요 용도JavaScript/TypeScript 식별자와 많은 Java 스타일 propertyPython 식별자, DB 컬럼, 데이터 파이프라인, 설정 형식
단어 구분자없음밑줄 (_)
대소문자첫 단어 소문자, 이후 단어 대문자 시작보통 모두 소문자
약어 예시apiResponseUrlapi_response_url
대표 경계frontend / application modelbackend / API / DB field

camelCase을 사용하는 경우

camelCase는 userProfileImage처럼 간결하며 변수, property, function에 이미 camelCase를 쓰는 생태계와 잘 맞습니다.

snake_case을 사용하는 경우

snake_case는 user_profile_image처럼 단어 경계가 명확하며 Python, SQL, 데이터 처리, API에서 널리 사용됩니다.

상황별 선택표

상황권장 규칙이유
JavaScript 또는 TypeScript 애플리케이션 코드camelCaseJavaScript 생태계에서는 변수, 매개변수, 메서드, object property에 lower camel case를 흔히 사용합니다.
Python 애플리케이션 코드snake_casePEP 8은 함수와 변수에 소문자와 밑줄을 사용하는 방식을 권장합니다.
JSON 또는 HTTP API 경계API contract를 따름애플리케이션 내부는 한 가지 규칙으로 유지하고 serialization 또는 transport 경계에서 한 번만 변환하는 편이 안전합니다.
기존 database 또는 analytics schema기존 schema를 따름이미 사용 중인 외부 명명 contract를 바꾸는 것보다 애플리케이션 경계에서 맞추는 비용이 보통 더 낮습니다.

어떤 네이밍 스타일을 선택해야 하나요?

현재 레이어가 기대하는 규칙을 사용하세요. JavaScript frontend가 snake_case API를 사용한다면 경계에서 camelCase로 변환할 수 있으며, 각 레이어 내부의 일관성이 가장 중요합니다.

자주 하는 실수

  • 약어에 하나의 정답만 있다고 가정하지 마세요. userID, userId, user_id는 실제 시스템에서 모두 나타납니다.
  • 같은 application model이나 cache key에 raw snake_case 데이터와 정규화된 camelCase 데이터를 섞지 마세요.
  • class instance, file, stream 같은 non-JSON 값을 plain object처럼 재귀적으로 키 변환하지 마세요.

네이밍 스타일 간 변환

식별자를 붙여넣어 대상 형식과 지원하는 네이밍 스타일을 확인하세요. 변환은 브라우저에서 실행됩니다.

감지: snake_case
snake_case 출력
user_profile_image_url

모든 네이밍 형식

camelCase
userProfileImageUrl
PascalCase
UserProfileImageUrl
snake_case
user_profile_image_url
kebab-case
user-profile-image-url
CONSTANT_CASE
USER_PROFILE_IMAGE_URL
dot.case
user.profile.image.url
path/case
user/profile/image/url

변환은 브라우저에서 로컬로 처리되며 입력은 변환 서버로 전송되지 않습니다.