무한루프/코딩, 개발

프로그래밍 네이밍 컨벤션 정리 – 파스칼 케이스, 카멜 케이스, 케밥 케이스 등

시원한생맥주 2025. 3. 29. 09:00

 

파스칼 케이스 카멜 케이스 케밥 케이스
파스칼 케이스 카멜 케이스 케밥 케이스

 

 

 

코드를 작성할 때 변수나 함수, 클래스의 이름을 어떻게 지어야 할지 고민해 본 적이 있을 것이다. 네이밍 컨벤션(Naming Convention)은 프로그래밍에서 일관된 변수명과 함수명을 정하는 규칙으로, 코드의 가독성을 높이고 협업을 원활하게 해준다.

 

잘 정리된 네이밍 규칙을 따르면 코드의 의미를 쉽게 파악할 수 있으며, 유지보수도 훨씬 수월해진다. 이번 글에서는 대표적인 네이밍 컨벤션인 파스칼 케이스(Pascal Case), 카멜 케이스(Camel Case), 스네이크 케이스(Snake Case), 케밥 케이스(Kebab Case)의 특징과 주로 사용되는 곳을 정리하고, 각 방식이 실제 코드에서 어떻게 활용되는지도 예제와 함께 알아보겠다.

 

 

 

 

1. 파스칼 케이스(Pascal Case)

특징

  • 여러 단어로 구성된 이름을 사용할 때 각 단어의 첫 글자를 대문자로 표기한다.
  • 띄어쓰기나 특수문자는 사용하지 않는다.
  • 가독성이 뛰어나며, 주로 클래스나 타입 정의에서 사용된다.

예시

class UserAccount {}
class OrderHistory {}
interface PaymentProcessor {}

사용처

  • 클래스명: Java, C#, TypeScript 등 객체지향 언어에서 클래스명을 정의할 때 주로 사용된다.
  • 타입 및 인터페이스명: TypeScript에서 타입 정의나 인터페이스명을 지정할 때 사용된다.
  • 객체 모델: 프레임워크에서 데이터 모델 객체나 DTO(Data Transfer Object) 클래스명을 작성할 때 적용된다.

 

 

 

2. 카멜 케이스(Camel Case)

특징

  • 첫 단어는 소문자로 시작하며, 이후 단어의 첫 글자는 대문자로 표기한다.
  • 띄어쓰기나 특수문자는 사용하지 않는다.
  • 가독성이 좋고 변수명, 함수명에서 많이 활용된다.

예시

let userName = "John Doe";
function getUserInfo() {
    return userName;
}

사용처

  • 변수명: JavaScript, Java, C#, Python 등 다양한 프로그래밍 언어에서 일반적인 변수명을 정의할 때 사용된다.
  • 함수명: JavaScript, Java, C# 등의 함수 및 메서드명을 정의할 때 많이 쓰인다.
  • 객체 속성명: JSON 데이터 구조에서 속성명을 정의할 때 사용된다.

 

 

 

3. 스네이크 케이스(Snake Case)

특징

  • 모든 단어를 소문자로 표기하며, 각 단어는 밑줄(_)로 구분한다.
  • 띄어쓰기 없이 단어를 구분할 수 있어 데이터베이스 및 일부 프로그래밍 언어에서 많이 활용된다.

예시

user_name = "John Doe"
def get_user_info():
    return user_name

사용처

  • 변수 및 함수명: Python, Ruby, C 등의 프로그래밍 언어에서 사용되며, 특히 Python의 PEP8 스타일 가이드에서 권장된다.
  • 데이터베이스 컬럼명: SQL에서 테이블 컬럼명을 작성할 때 자주 사용된다.
  • 환경 변수: 운영체제에서 환경 변수를 정의할 때 사용된다.

 

 

 

4. 케밥 케이스(Kebab Case)

특징

  • 모든 단어를 소문자로 표기하며, 각 단어는 하이픈(-)으로 구분한다.
  • 띄어쓰기 없이 단어를 구분할 수 있으며, 웹 개발에서 주로 활용된다.

예시

<div class="user-profile"></div>

사용처

  • CSS 클래스 및 ID명: HTML과 CSS에서 스타일을 정의할 때 주로 사용된다.
  • URL 및 파일명: 웹 URL과 정적 파일명(예: JavaScript, CSS 파일)을 작성할 때 사용된다.
  • Vue.js 및 Angular의 디렉티브: HTML 내에서 사용자 정의 태그나 속성을 정의할 때 사용된다.

 

 

 

5. 헝가리안 표기법(Hungarian Notation)

특징

  • 변수명 앞에 데이터 타입이나 목적을 나타내는 접두사를 붙인다.
  • 과거 C, C++ 프로그래밍에서 많이 사용되었으나, 현대적인 코드 스타일에서는 잘 사용되지 않는다.

예시

int iCounter = 0;
string strUserName = "John";

사용처

  • 과거 C, C++ 환경: Windows API 개발에서 많이 사용되었으나, 현재는 거의 쓰이지 않는다.
  • 특정 시스템 개발 환경: 일부 기업의 레거시 시스템에서는 여전히 사용될 가능성이 있다.

 

 

6. 결론

 

각 네이밍 컨벤션은 사용되는 언어나 목적에 따라 다르게 적용된다.

네이밍 컨벤션 특징 주로 사용되는 곳
Pascal Case 각 단어의 첫 글자를 대문자로 표기 클래스명, 타입명, 인터페이스명
Camel Case 첫 단어는 소문자, 이후 단어는 대문자로 시작 변수명, 함수명, 객체 속성명
Snake Case 단어를 밑줄(_)로 구분 변수명, 함수명, DB 컬럼명, 환경 변수
Kebab Case 단어를 하이픈(-)으로 구분 CSS 클래스, URL, 파일명
Hungarian Notation 데이터 타입을 접두사로 붙임 과거 C/C++ 코드, 일부 레거시 시스템

 

이 네이밍 규칙을 숙지하면 협업 시 가독성이 좋은 코드를 작성할 수 있다. 각 언어의 스타일 가이드를 참고하여 적절한 컨벤션을 적용하는 것이 중요하다. 네이밍 컨벤션을 일관되게 유지하면 코드의 유지보수성과 확장성이 향상되므로, 프로젝트 내에서 통일된 규칙을 따르는 것이 바람직하다.