반응형

예전 블로그에서 알고리즘을 푼 것을 업로드 했는데, 코딩 컨벤션이 개판인게 들통나서 코딩 컨벤션좀 공부하고 적용하려고 이 글을 쓴다. 여러 기업의 코딩 컨벤션 중 선택한 것은 구글의 Java를 선택했다. 자바 코딩 컨벤션(Java Coding Convention)은 지속적으로 UPDATE를 하면서 고쳐나간다.

 

1. 네이밍

1) Class

Class는 UpperCamelCase를 적용한다. UpperCamelCase는 첫 글자는 대문자로 사용하고, 단어가 나올 경우 다시 대문자를 사용한다. 예를 들어, UpperCamelCase나 RestfulApiController처럼 사용하면 된다.

 

아래의 코드처럼, Class는 UpperCamelCase, Class가 아닌 객체는 lowerCamelCase를 사용한다.

@Autowired
private RestApiService restApiService;

 

2) Method

Method는 lowerCamelCase를 적용한다. lowerCamelCase는 첫 글자는 소문자로 사용하고, 단어가 나올 경우는 대문자를 사용한다. 예를 들어, executeGet, jsonPost 처럼 사용하면 된다.

 

3) 상수

i) 값이 변하는 상수

값이 변하는 상수는 CONSTANT_CASE를 사용하지 않고, lowerCamelCase를 사용한다. numSize 처럼 사용하면 된다.

 

ii) 값이 변하면 안되는 상수

값이 변하면 안되는 상수는 CONSTANT_CASE를 사용한다. 예를 들어, NUM_SIZE = 5; 처럼 사용하면 된다.

 

4) 지역변수, 파라미터 등

지역변수와 파라미터 등의 위에서 언급한 것을 제외한 것은 lowerCamelCase를 사용한다.

 

2. 문서 주석 양식

문서 주석 양식은 아래와 같이 사용한다.

/***
* test
***/
private String testValue;

 

3. 애노테이션(annotation)

애노테이션(annotation)은 1줄에 1개씩 사용한다.

@RequestMapping("/url/test.*")
public String test(Map model) throws SQLException{
    
}

 

4. switch문

- 들여쓰기는 4개 공백을 사용한다.

- default 코드가 없어도 default를 추가한다.

 

5. 배열 선언

배열 선언은 타입에 붙여준다.

String[] arr

 

6. 변수 선언

변수는 1줄에 1개씩 선언한다.

예를 들어, 아래처럼 1줄에 2개 이상이 아닌 1줄에 1개씩 선언한다.

int a, b; (X)

int a = 0;
int b = 0;

 

지역변수는 맨 위에 선언하는 것이 아닌, 사용해야 하는 변수의 위치에 가깝게 선언한다.

 

7. 괄호

괄호 형식은 아래와 같이 사용한다. 

@Transactional
public Map Test(Map map) throws SQLException {
	if(A>B) {
    	log.debug("HI");
    } else {
    	log.debug("BYE");
    }
}
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기