Naming
[Naming] 프로그래밍 표기법 총 정리 with Java (Programming Naming rules)
절대 정답이 아니며 , 회사마다 사람마다 쓰는 네이밍은 다릅니다 참고만 해주시면 감사하겠습니다.
네이밍( Naming ) 종류
1.camelCase(캐멀, 단봉낙타 표기법)
각 단어의 첫 단어를 대문자로 표기하고 붙여 쓰되, 맨 처음 단어는 소문자로 표기함
띄어쓰기 대신 대문자로 단어를 구분하는 표기 방식
예시: backgroundColor, typeName, iPhone
2.PascalCase(파스칼, 쌍봉낙타 표기법) or Upper Camel Case
첫 단어를 대문자로 시작하는 표기법
예시: BackgroundColor, TypeName, PowerPoint
3.Hungarian notation(헝가리 언)
접두어를 사용하는 표기법
형식은 camelCase와 같지만, 맨 앞의 단어가 자료형을 나타내는 접두어임
예시: strName, bBusy, szName
3-1.헝가리 언 표기법
접두어 | 데이터 타입 |
b | byte, boolean |
n | int, shot |
i | int, shot(주로 인덱스로 사용) |
c | int, short(주로 크기로 사용) |
l | long |
f | float |
d, db | double |
ld | long double |
w | word |
dw | double word |
qw | quad word |
ch | char |
sz | NULL로 끝나는 문자열 ( string + zero ) |
str | C++ 문자열 |
arr | 배열(문자열 제외): 다른 접두어와 조합 가능 |
p | 포인터(16bit, 32bit): 다른 접두어와 조합 가능 |
lp | 포인터(64bit): 다른 접두어와 조합 가능 |
psz | NULL로 끝나는 문자열을 가리키는 포인터(16bit, 32bit) |
lpsz | NULL로 끝나는 문자열을 가리키는 포인터(64bit) |
fn | 함수 타입 |
pfn | 함수 포인터(16bit, 32bit) |
lpfn | 함수 포인터(64bit) |
3-2. 헝가리 언 표기법 OOP ( Object Oriented Programming, 객체 지향 프로그래밍 )
접두어 | 데이터 타입 |
g_ | 네임스페이스의 글로벌 변수 |
m_ | 클래스의 멤버 변수 |
s_ | 클래스의 static 변수 |
c_ | 함수의 static 변수 |
출처: [명우니닷컴]
4.snake_case (스네이크) or under_scores (언더 스코프)
단어를 밑줄 문자(_)로 구분하는 표기법
예시: background_color, type_name
5.UPPER_SNAKE_CASE(대문자 스네이크)
단어를 밑줄문자(_)로 구분하고 문자 전부 대문자로 기입하는 표기법
주 사용 : Bash 변수, Java 상수(staic final)
예시 : MAX_PARTICIPANTS , MIN_PARTICIPANTS
static final int MAX_PARTICIPANTS = 10;
6.kebab-case (케밥)
하이픈(-)으로 단어를 연결하는 표기법
주 사용 : HTML id, class, CSS
예시 : kebab-case, spinal-case, Train-Case, Lisp-case
출처:제타 위키
1.Java
예약어와 동일한 이름은 절대 금지
https://java119.tistory.com/21
1-1. 패키지 ( package )
인터넷 도메인 주소의 역순을 많이 사용
자바 기본 라이브러리에서 사용 중인 java와 javax의 이름 사용은 제한
패키지명으로는 가급적 한 단어의 명사를 사용한다.
[com].[회사명].[프로젝트명].[최상위패키지명].[하위패키지명]…
예시 : package com.tistory.kakao.object;
1-2. 클래스 ( Class )
Java Class : PascalCase
예시 : ClassName, Calc01, JqueryController
1-3. 인터페이스 ( interface )
Java interface : PascalCase
택 1.
1. 인터페이스가 구현 클래스에 정보를 제공하는 경우 형용사 이름 사용 (~able, ~ible)
2. 일반 인터페이스 명사 사용
예시 1 : interface Serializable {...}
예시 2 : interface Controoler {...}
1-4. 메서드
Java Method : camel case, snake_case
JavaScript function : camel case, snake_case
예시 : getValue, get_Value
1-5. 변수( Variable )
Java Variable : camel case, snake_case
소문자의 명사
예시 : int age; String name; int myAge; String myName;
1-6. 상수 ( Constant )
Java Constant : UPPER_SNAKE_CASE
모두 대문자로 사용
예시 : public static final int MAX_NUM = 100;
1-7. Enum
Enum 이름은 클래스 이름 규약을 따름, 세부 항목의 이름은 모두 대문자를 사용.
enum Season {SPRING, SUMMER, FALL, WINTER}
2.HTML
2-1.id/class
id : camel case
예시 : id="boardView", id="boardTB"
class : snake_case
예시 : class="link_view"
반의어 모음
– get/set
– add/remove
– create/destroy
– start/stop
– insert/delete
– increment/decrement
– old/new
– begin/end
– first/last
– up/down
– min/max
– next/previous
– open/close
– show/hide
– suspend/resume
– parent/child