728x90
이번에 직접 팀에서 진행하고 있는 프로젝트에 코드 컨벤션을 정하고, Checkstyle을 도입하여 컨벤션을 강제화 하는 작업을 진행했다.
Java의 코드 컨벤션과 구글, 네이버에서는 각각 어떤 정책을 사용하고 있는지 구글링을 통해 많이 공부했는데,
Checkstyle 적용 내용은 나오지만 막상 그게 무슨 정책인지 어렵고 Google과 Naver가 각각 어떤 정책들을 선택해서 적용하고 있는지 한 눈에 파악하기 어려워서 직접 정리해보았다!!
그래서 각 회사별 어떤 정책을 수용했는지 정리하고, 최종적으로 우리 프로젝트에 적합한 정책들을 선별하여 적용시켰다 :)
Checkstyle이란?
프로젝트 빌드 시 프로젝트 내에서 정한 코드컨벤션을 지켰는지 확인하는 플러그인으로
Checkstyle 내의 설정에 따라 컨벤션을 지키지 않았을 경우 경고를 띄우거나, 빌드 fail을 시키는 등 유연하게 적용할 수 있다.
Checkstyle의 정책과 옵션 등 상세 내용은 아래 링크를 참고하면 된다.
https://checkstyle.sourceforge.io/
Checkstyle.xml 파일
https://github.com/checkstyle/checkstyle/tree/master/src/main/resources
Naver
https://github.com/naver/hackday-conventions-java/blob/master/rule-config/naver-checkstyle-rules.xml
적용된 정책 간단 비교표
728x90
'백엔드' 카테고리의 다른 글
[Lombok] @Builder.Default - @Builder 사용 시 필드값 초기화 방법 (0) | 2023.08.13 |
---|---|
[Swagger] 2. Swagger3에서 Group별로 Tag 설정하기(feat. OpenApiCustomiser) (0) | 2023.05.16 |
[Swagger3] 1. springdoc-openapi를 이용한 Swagger3 설정하기(+Swagger 옵션) (0) | 2023.05.05 |
[ELK] 2. Kibana에서 Teams WebhookURL로 에러 모니터링하기 (1) | 2023.03.13 |
[ELK] 1. Kibana에서 Slack Webhook 모니터링 설정하기 (1) | 2023.03.13 |
댓글