brunch

You can make anything
by writing

C.S.Lewis

by Daniel Lim Aug 12. 2016

JAVA CODE STYLE GUIDE

Google Style Guide


코드 스타일 가이드가 있으면 결과적으로 코드의 질이 좋아진다.
(당장은 아니겠지만)


기본적으로 많은 곳에서 사용되는 자바 스타일 가이드는 SUN 의 스타일 가이드이다.


스타일 가이드에서 제시하는 코드 규칙의 중요성을 간략하게 정리하면 다음과 같다.

소프트웨어를 개발하는 일련의 모든 과정에 들어가는 비용 중 80%가 유지보수에 사용된다.

유지보수를 최초 소프트웨어를 개발한 사람이 담당하는 경우가 거의 없다.

코드 규칙을 지키면 다른 개발자가 소스코드를 보았을 때 이른 시간에 이해할 수 있도록 도와준다.


만약 코드 스타일 가이드를 한 번도 읽어 보지 못했다면 SUN 의 스타일 가이드를 읽어 보길 추천한다. 원본은 영어로 되어 있지만, 한국어로 번역된 글도 많고 내용 대부분이 예제 코드로 이루어져 있으므로 문제없이 읽을 수 있을 것이다.


지금부터 소개할 것은 SUN 의 스타일 가이드가 아닌 GOOGLE의 스타일 가이드이다.

Google java style guide는 60% 정도는 SUN의 스타일 가이드와 같다.
몇 가지 다른 부분들은 tab 대신 space를 사용하는 것과 column limit 이 80에서 100으로 더 크게 지정되었다는 부분과 최신 lambda 표기법 등이 있다.


선택의 이유는 SUN 의 스타일 가이드는 근래에 업데이트가 되지 않고 있지만, google의 스타일 가이드는 조금씩 업데이트가 되고 있다.

javaguide.html 파일의 마지막 변경 시점은 29일 전이다 (2016.08.11 기준)


GOOGLE STYLE GUIDE

기본적으로 개발 도구를 ECLIPSE을 사용하는 기준으로 기본 코드 컨벤션 설정은 SUN 사의 스타일로 처리되어 있다.


우선 기본 CODE FORMAT를 Google 의 style로 변경해야 한다.
순서는 다음과 같다.

구글에서 제공하는 이클립스용 스타일 포맷을 내려받는다.

ECLIPSE를 실행하고 다음 메뉴로 이동한다.          Window > Preference > java > Code Style > Formatter      

Window > Preference > java > Code Style > Formatter

Import를 선택하고 내려받은 XML 파일을 선택하고 Active Profile을 GoogleStyle로 설정한다.

Ctrl + Shift + F를 이용해 소스 코드를 정렬한다.

참고 자료


Eclipse Checkstyle Plugin

코드를 작성하다 보면 스타일 가이드를 지키고 있는지 알 수 없다.
Checkstyle이라는 프로그램을 이용하여, ant 또는 java를 이용한 실행으로 잘못된 스타일 가이드를 확인할 수 있지만, 실시간이 아니므로 재작업에 어려움을 느낄 수 있다.


다행히 실시간으로 스타일 가이드를 확인할 수 있는 이클립스 플러그인이 있다.

설치는 다음과 같다.

Help > Eclipse Market place에서 CheckStyle로 검색을 하면 CheckStyle PluginX.X..이라는 이름의 플러그인을 설치하면 된다.

설치가 완료되면 이클립스를 재기동한다.

설치가 끝나면 사용을 하기 위해 간단한 설정을 해야 한다

Window > Preference > Checkstyle에서 Google Check를 기본값으로 설정하고 저장한다.

사용할 프로젝트에서 마우스 오른쪽 키 > Properties 또는 Alt + Enter를 이용해서 설정으로 이동한다.

왼쪽 트리 메뉴에서 Checkstyle를 선택하고 오른쪽의 Checkstyle active for this project의 체크박스를 체크한다.

OK 버튼을 누른다.


이후 화면에서 스타일을 지키지 않은 내용을 바로 확인할 수 있다.

 

작가의 이전글 개발 방법론-1
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari