DevYGwan
Coding Style : Case Style ( Naming Convention ) 본문
개발을 진행하다보면 팀 프로젝트를 하는 경우가 많다. 이때 혼자할때와는 다르게 팀원들간의 코딩 스타일을 맞추는 작업이 사전에 필요하다. 코딩 스타일이란 코드를 작성하는 방식에 대한 개인적인 기호를 뜻한다. 물론 코딩 스타일에 정답은 없지만, 이러한 스타일을 사전에 맞추는 것이 안정적으로 코딩하는데에 있어서 아주 중요하다. 저는 여러가지 코딩 스타일중 이번 장에서는
Case style(Naming Convention)에 대하여 다뤄볼 예정이다.
Case Style ( 케이스 스타일) 이란?
- 케이스 스타일이란 코딩 스타일 중 일부로써 작명 규칙을 의미한다.
- 변수, 메서드, 클래스 등의 식별자의 작명 스타일을 의미한다.
- 대부분 언어마다 정해진 케이스 스타일이 존재한다.
- 대표적인 표기법으로는 다음의 5가지가 있다.
camelCase # 카멜 케이스
PascalCase # 파스칼 케이스
snake_case # 스네이크 케이스
SCREAMING_SNAKE_CASE # 스크리밍 스네이크 케이스
kebab-case # 케밥 케이스
그렇다면 이 5가지에 대하여 자세하게 설명해보도록 하겠습니다.
1. 카멜 케이스 ( Camel Case )
- 카멜 표기법(Camel case 카멜 케이스)는 프로그래밍에서 파일, 변수, 함수등 대상의 이름을 띄어쓰기 없이 짓기 위하여 따르는 관례인 네이밍컨벤션(Naming convention)의 하나다.
- 단어 전체적으로 소문자를 사용하지만, 맨 첫 글자를 제외한 각 합성어의 첫 글자만 대문자로 나타낸다.
- 즉, 여러 단어를 연달아 사용할 때 각 단어의 첫 글자를 대문자로 적되, 맨 앞에 오는 글자는 소문자로 표기하는 것이다.
# 카멜 케이스 예시
camelCase
2. 파스칼 케이스 ( Pascal Case )
- 연달아 오는 단어의 모든 앞글자를 대문자로 표기하는 것은 카멜 표기법과 같지만, 맨 앞에 오는 문자까지도 대문자로 표기한다.
- 파스칼 케이스는 Upper camel case라고도 한다.
- 파스칼 언어들의 경우 첫 문자는 모두 대문자로 표기하였기 때문에 해당 이름에서 유래가 있다.
- 카멜 케이스와 혼동될 수 있으니 주의해야한다.
# 파스칼 케이스 예시
PascalCase
3. 스네이크 케이스 ( Snake Case )
- 스네이크 표기법(Snake case 스네이크 케이스) 또는 스네이크 표기법은 프로그래밍에서 파일, 변수, 함수 등 대상의 이름의 띄어쓰기를 언더바(_)로 표기하는 관례인 네이밍 컨벤션(Naming convention)이다.
- 코드가 마치 뱀의 형상을 한 것 같다고 지어진 표기 방식이다.
- 언어 내의 식별자뿐만 아니라, 언어가 적힌 파일명을 작성하는 데에도 주로 사용된다.
# 스네이크 케이스 예시
snake_case
4. 스크리밍 스네이크 케이스( Screaming Snake Case )
- snake case와 비슷하게 단어 구분자로 _를 사용하지만, 나머지 문자를 전부 대문자로 적는 표기법.
- 주로 상수 정의, 환경 변수 정의 등에 사용된다.
# 스크리밍 스네이크 케이스 예시
SCREAMING_SNAKE_CASE
5. 케밥 케이스 ( Kebab Case )
- snake case와 거의 비슷하지만 구분자로 (-)를 사용하는 네이밍 컨벤션이다.
- 글자들이 마치 꼬치에 끼인 것처럼 띄어쓰기를 하이푼(-)으로 대체한 표기 방식을 케밥케이스 라고 한다.
- 현업에서 사용되는 언어들 중 케밥케이스를 공식 컨벤션으로 강제하는 언어는 사실상 없다.
- 주로 파일명 등을 공백 없이 작성할 때나 주로 쓰인다.
# 케밥 케이스 예시
Kebab-Case
Case Styles(Naming Conventions) 는 이밖에도 많은 종류가 있지만 저같은 경우 가장 많이 쓰는 5가지를 소개했습니다. 그렇다면 이러한 규칙을 지켜야하는 이유는 무엇일까요?
- 소스 코드를 읽고 이해하는 데 드는 시간을 절약할 수 있다.
- 네이밍 형식을 통해 해당 변수가 어떤 객체를 뜻하는지 알 수 있다. (클래스, 메서드, 변수, 상수 등을 네이밍 규칙만 보고 알 수 있다.)
- 개발자와 분석가가 시스템 수행 작업 및 소스코드를 수정 / 확장 등의 경우 적용하는 방법을 보다 쉽게 이해할 수 있다.
- 다른 사람이 읽기 편하다. -> 가독성이 좋아진다.
'Study > DEVELOP' 카테고리의 다른 글
Jitpack & github releases를 사용한 라이브러리 배포 (1) | 2024.09.13 |
---|---|
SSH 방식으로 CICD 구축 시 주의할 점 :: 서버 내 환경 변수 설정 처리 (3) | 2024.06.13 |
MVC Pattern (1) | 2022.12.27 |