본문 바로가기
프로그래밍

변수명 작성 규칙 (Naming_Rule)

by Youngs_ 2020. 6. 23.

평소 프로그래밍을 할때 변수명을 Youngs_blog, Young_Blog youngs_blog이렇게 제각각으로 작성 했었는데 알고 보니 변수명도 작성하는 규칙이 있더라구요.

변수명 작성 규칙에 대해 한번 정리 해보려고 합니다. 각 작성 규칙별 이름도 있긴 하지만 이름보다는 이렇게 변수명을 짓는구나~ 정도만 기억하고 변수명을 정하면 될 것 같습니다.

물론 개인 프로젝트를 진행 할때는 자기가 편한대로 작성하면 되겠지만 다른 사람들과 협업해서 진행하는 경우 변수명을 어떤 규칙을 사용해서 지을지 정해서 사용하면 업무 효율성이 더 좋겠죠?

 

1. Camel Case

생김새가 낙타와 같다하여 붙여진 이름이라고 합니다.

camelNamingRule 글자 중간중간 대문자가 들어간게 보이죠? 원래는 Camel naming rule이라는 글자인데 변수명으로 지정할때 첫번째 단어(Camel)는 전부 소문자, 그 이후의 단어들(naming,rule)의 첫번째 단어(Naming, Rule)는 대문자를 사용해서 Camel naming rule -> camelNamingRule 이렇게 변수로 사용하는 방법입니다.

 

Camel Case에는 lower Camel Case, Upper Camel Case 두가지 방법이 있는데 lower Camel Case가 위에서 설명해드린 camelNamingRule이고 Upper Camel Case는 첫번째 단어의 첫 글자 또한 대문자를 써서 UpperCamelCase 형식으로 작성하는 규칙입니다. 또한 Upper Camel Case는 파스칼 케이스(Pascal Case)라고도 불립니다.

보통 Camel Case라고 하면 lower Camel Case를 의미합니다.

 

lower Camel Case -> lowerCamelCase (첫번째 글자는 소문자)

Upper Camel Case(Pascal Case) -> UpperCamelCase (첫번째 글자를 포함, 모든 단어의 첫글자를 대문자)

 

2. Snake Case

생김새가 뱀과 같다하여 붙여진 이름입니다.

작성 규칙은 글자 모두 소문자로 작성하고 공백이 있어야 하는 자리에 언더바를 넣는방법입니다.

단어와 단어 사이를 대소문자로 구분하는 것 보단 _로 구분하는게 보기도 편하고 입력하기에도 편하지 않나요? ㅎㅎ 제 주관적인 생각입니다.

Snake naming rule -> snake_naming_rule과 같이 작성하는 방법이고 Snake_Naming_Rule과 같이 작성해서 헷갈리지 않도록 합시다... 제가 개인 프로젝트를 진행하다가 Snake_Naming_Rule처럼 대소문자를 섞어서 쓰다가 변수명이 자주 헷갈렸어요.. 개인적으로는 단어의 맨 앞글자를 대문자로 작성하는게 이쁘던데..

 

Snake Naming Rule -> snake_naming_rule (글자 모두 소문자, 공백 자리는 언더바(_)를 넣을것)

 

3. Train Case

Snake Case와 유사한 Naming Rule로 제가 개인적으로 좋아하는 명명법입니다.

각 단어의 첫글자는 대문자로 작성하고 공백이 있어야 하는곳에 언더바(_)를 작성하는 방법입니다.

 

Train Naming Rule -> Train_Naming_Rule (각 단어의 첫글자는 대문자, 공백 자리는 언더바(_)를 넣을것)

4. Hungarian Case

기본적으로는 Camel Case를 따르고 변수명 앞에 타입을 명시해주는 규칙입니다.

제가 변수명 작성 규칙에 대해 잘 모를때 Train Case와 혼용해서 사용했던 방법이네요..

strHungarianCase, intHungarianCase와 같이 변수명 앞에 타입을 소문자로 명시해주면 됩니다.

제가 개인프로젝트를 진행 할 때는 str_Hungarian_Case와 같이 Train Case와 혼용해서 변수명을 명명했었는데.. 이런 방법도 이름이 있는지 모르겠네요. 만약 있다면 댓글로 알려주시기 바랍니다. 수정하겠습니다.

 

Hungarian Naming Rule -> strHungaraianNamingRule (타입은 소문자)

댓글