Why Naming Rull?
- 명명 규칙 준수를 통한 업무 생산성 효과
- 일종의 규약을 설정하여 협업의 원활한 업무적 의사소통 가능
- 업무 단계별 산출물 사이의 일관성 유지
- 명확한 의미 부여로 산출물 사이의 연관성 및 코드 가독성 증가
@ 대소문자 혼용 기법
1. 클래스나 메소드명은 파스칼 표기법을 따른다.
모든 단어에서 첫 번째 문자가 대문자이며 나머지는 소문자로 표기.
public class HelloWorld{ // 클래스명
public void HelloCity(){ // 메소드명
}
}
2. 변수, 파라미터 등은 카멜 표기법을 따른다.
최초에 사용된 단어를 제외한 모든 단어의 첫 문자가 대문자이며, 나머지는 소문자로 표기.
int totalCost = 0; // 변수명
String fullName = "";
public void HelloCity(String familyName){}; // 파라미터명
3. 변수에 모든 의미를 충분히 담을것 (접두사 제외)
가능하면 모든 축약어를 사용하지 않고, 의미를 바로 알 수 있도록 한다.
접두사를 사용하여 변수명을 지을때 접두사는 축약어를 사용하는 편이 좋다.
4. "a, i, j" 같이 하나의 문자로 된 이름은 사용하지 말것 (반복문 제외)
5. 네임스페이스(패키지명 등)은 프로젝트 표준 패턴에 따라 사용
네임스페이스 작명은 다른 라이브러리를 import 할 때 사용하는 것을 참고 하면 많은 도움이 될 것이다.
네임스페이스 이름은 Pascal case적용할 것
6. 키워드와 비슷한 이름은 쓰지 말것. (단, 다른 단어와 조합하여 사용은 제외)
프로그램에서 키워드라고 하는 것은 보통 static, public 같은 예약어다.
물론 단독으로 쓰면 컴파일시 에러를 발생하던가 할 것이다.
하지만 가능하면 피하는 것이 좋고, 의미 부여를 위해 어쩔 수 없다면 다른 단어 적절한 조합을 이루어 사용하는 것이 좋다.
7. Boolean 변수에는 is 접두어를 사용.
isFind, isExist
8. CSS의 class명, WEB URL에는 Kebab Case(케밥 케이스)
카멜 케이스와 달리 모두 소문자로 표현하며 단어와 단어 사이를 대시(-)를 이용하여 구분한다.
스프링의 yml파일이나 주로 url주소에서 사용된다.
변환 전 : My Visitor Count
변환 후 : my-visitor-count
9. DataBase의 Table명과 Column명에는 Snake Case(스네이크 케이스, =Pothole Case)
케밥의 대시(-)와 다르게 언더스코어(_)를 구분자로 한다.
모든 문자를 대문자로 나타내는 방식도 사용되며 주로 상수 표현 시에 사용한다.
변환 전 : My Visitor Count
변환 후 : my_visitor_count
변환 후 : MY_VISITOR_COUNT
'Programming > 협업' 카테고리의 다른 글
[Typescript] Eslint로 저장 시 사용하지 않는 import 제거 (0) | 2023.05.09 |
---|---|
[Git] commit할 때 hooks으로 console.log() 삭제, Error (0) | 2023.03.11 |
[Programming] ESLint와 Prettier (0) | 2022.09.17 |