식별자(변수, 함수 등)의 이름을 정할 때 사용되는 네이밍 컨벤션은 코드의 가독성과 일관성을 높이기 위해 매우 중요하다.

잘 지은 이름은 코드를 읽고 이해하는 시간을 단축시켜 프로젝트의 효율성을 높이기 때문이다.

 

각 네이밍 컨벤션은 프로그래밍 언어나 프레임워크에 따라 권장되는 방식이 다르므로,

네이밍 컨벤션의 종류와 주로 어디에서 쓰이는지에 대해 알아보고자 한다.

 

1. 카멜 케이스 camelCase

Camel Case첫 번째 단어는 소문자로 시작하고, 이후 단어의 첫 글자는 대문자로 시작하는 방식이다.

마치 낙타 등의 혹을 연상시키듯 중간에 대문자들이 솟아있어 Camel(낙타) Case라고 불린다.

Java, Javascript, C#, PHP, Swift 등 많은 언어들이 카멜 케이스를 네이밍 컨벤션으로 채택하고 있다.

 

예시: studentName, userInputVal

2. 파스칼 케이스 PascalCase

Pascal Case첫 번째 단어를 비롯한 단어의 첫글자를 대문자로 시작하는 방식이다. 이 방식이 카멜 케이스와 유사하여 UpperCamelCase라고도 칭한다.

보통 클래스명이나 타입명, 네임스페이스명 등을 지을 때 주로 사용한다.

 

예시: StudentInfo, FileUploadHandler

3. 스네이크 케이스 snake_case

Snake Case소문자 단어와 단어 사이를 언더바(_)로 연결하는 방식이다.

Python의 PEP 8 스타일 가이드에서는 이를 권장하고 있으며, SQL에서 컬럼명을 지을 때도 주로 사용된다.

 

예시: student_name, user_input_val

 

더보기

💡 스크리밍 스네이크 케이스 SCREAMING_SNAKE_CASE

Screaming Snake Case대문자 단어와 단어 사이를 언더바(_)로 연결하는 방식이다.

스네이크 케이스에서 소리지르듯 강조하는 느낌을 줄어 Screaming(외치는) Snake Case라는 이름이 붙여졌다.

주로 상수명을 정할 때 해당 케이스를 사용한다.

 

예시: MAX_BUFFER_SIZE, DATABASE_NAME

4. 케밥 케이스 kebab-case

Kebab Case소문자 단어와 단어 사이를 하이픈(-)으로 연결하는 방식이다.

이는 하이픈으로 연결된 단어가 꼬챙이에 꿰인 케밥 같아 보여 붙여진 이름이다.

보통 HTML, CSS 혹은 URL에서 많이 사용된다.

 

예시: margin-right, /event-calendar

 

더보기

💡 URL 슬러그로 케밥 케이스를 사용하는 이유

검색 엔진은 URL을 분석하여 그 내용을 이해하고 검색 결과에 반영한다.

이에 케밥 케이스는 단어를 분리하고 구조화하여 검색 엔진이 URL을 쉽게 해석할 수 있도록 돕는다.

즉, URL 슬러그로 케밥 케이스를 사용하는 것은 검색 엔진 최적화(SEO; Search Engine Optimization)에서 유리하다는 것이다.

 

변수와 함수 명명은 개발자이 재량이므로 언어나 프레임워크의 권장 방식에 반드시 맞추어야 하는 것은 아니다.

팀 프로젝트를 진행하고 있거나 이미 작성된 코드를 유지보수할 때엔, 그 방식에 맞춘 네이밍 컨벤션을 지키는 것이 가장 중요하다.

유영웅