IntelliJ 코드 컨벤션 & 클린코드 검사 자동 설정 가이드

SUN·2025년 10월 15일
4

우테코

목록 보기
1/1
post-thumbnail

우아한테크코스 프리코스를 시작했는데 코드를 작성 보면
“이게 들여쓰기 몇 칸이었지?”,
“이거 한 줄로 써도 되나?”,
“이건 클린코드 위반인가?”
같은 고민을 매번 하게 된다.

그래서 처음부터 IntelliJ에 자동화된 컨벤션 세팅을 만들어 넣으면 훨씬 편하다.

  • 코드 스타일을 포맷팅해주고
  • 클린코드 위반은 경고로 알려주는

(우테코 뿐 아니라 다른 개발 프로젝트에서도 팀 컨벤션을 이 글에 나온 것처럼 설정해두면 팀 내 코드 일관성을 유지해 관리 가능하다)

이 글에서는 그 과정을 단계별로 정리한다.


🎯 만들게 된 계기

우테코 프리코스에서는 Google Java Style Guide를 기본으로,
우테코에서 수정한 코드 스타일과 클린코드 체크리스트를 따르도록 되어 있다.

문제는…
이걸 매번 손으로 맞추기가 너무 귀찮고,
실수로 놓치는 항목들이 많다. 😅

그래서 IntelliJ가 알아서 포맷팅하고,
자동으로 포맷팅 할 수 없는 컨벤션을 어겼을 땐 직접 수정이 가능하도록 경고를 띄워주는 자동화 세팅이 필요하다.


🧩 구성 파일

두 파일만 있으면 된다.

파일명 역할
intellij-java-wooteco-style.xml 코드 포매팅 규칙 (자동 정렬)
checkstyle.xml 클린코드 검사 규칙 (경고 표시)


🎨 코드 컨벤션 (Code Style)

기준: Google Java Style Guide + 우테코 수정안

IntelliJ의 자동 포매터가 이 규칙에 따라 코드를 정리한다.
한 줄에 120자 넘으면 자동으로 줄바꿈,
중괄호 위치나 import 정렬도 알아서 처리된다.

주요 규칙 요약

  • 들여쓰기 4 spaces
  • 줄바꿈 시 추가 들여쓰기 +8 spaces
  • 한 줄 최대 길이 120자
  • 빈 줄 강제 여부 없음 (가독성 기준)
  • import 순서 static import → 일반 import (알파벳순)

🧱적용 방법

1.	IntelliJ → Settings → Editor → Code Style → Java
2.	점3개 클릭 → Import Scheme → IntelliJ IDEA code style XML
3.	intellij-java-wooteco-style.xml 선택 (파일은 글 하단 첨부)
4.	“WootecoStyle”로 활성화

이제 Ctrl + Alt + L 또는 저장 시 코드가 자동으로 포맷된다.


🧹 클린코드 체크리스트 (Clean Code Rules)

기준: 우테코 클린코드 체크리스트

이건 Checkstyle로 설정했다.
코드를 작성하면 IntelliJ가 자동으로 분석해서
규칙을 어긴 부분은 노란색/빨간색으로 경고를 띄워준다 ⚠️

예를 들어 메서드가 20줄이 넘어가거나,
else를 사용하면,
중첩 if가 두 번 이상 들어가면 바로 표시된다.

자동으로 검사되는 항목

  • 메서드 길이 15줄 이하
  • 메서드 인자 수 4개 이하
  • 중첩 구조 if/for/while/try 1단계 이하
  • else 사용 금지 (early return 권장)
  • 복잡도 CyclomaticComplexity ≤ 10
  • 파일 길이 300줄 이하
  • 줄 길이 120자 이하

🧱 적용 방법 (Checkstyle 설정)

1.	IntelliJ → Settings → Plugins → Marketplace
2.	상단 검색창에 Checkstyle 입력 → Checkstyle 플러그인 설치
3.	설치 후 IntelliJ를 재시작
4.	Settings → Tools → Checkstyle 이동
5.	 + Add 버튼 클릭 → “Use a local Checkstyle file” 선택
6.	다운로드받은 checkstyle.xml 파일 선택 (글 하단 첨부)
7.	“Active”로 지정 후 Apply 클릭


🧱 통합 적용 방법 (요약)

1️⃣ 파일 다운로드

wooteco-convention-intellij-config.zip
(안에 intellij-java-wooteco-style.xml, checkstyle.xml 포함)

2️⃣ IntelliJ 설정
1. Code Style → intellij-java-wooteco-style.xml 불러오기
2. Checkstyle 플러그인 설치 후 → checkstyle.xml 등록

플러그인은
File → Settings → Plugins → Marketplace → Checkstyle
에서 설치 가능하다.

3️⃣ 저장하고 확인

저장하거나 Ctrl + Alt + L 누르면 코드가 자동 포매팅된다.
규칙을 어긴 부분은 에디터에서 경고로 확인할 수 있다.


⚠️ 자동으로는 잡히지 않는 부분들

“코드 의미를 이해해야만 알 수 있는” 영역 존재.

이건 일반 룰기반 설정으로는 불가능해
직접 판단하고 설계 단계에서 의식적으로 적용해야 한다.

AI를 이용해 검사하도록 하면 이거도 자동화가 가능하다.
IntelliJ에서 AI를 통한 자동 검사 적용방법은 다음글에서 소개한다.

항목

  • 모든 원시값 / 문자열 포장
    의미 단위(도메인 컨텍스트)는 분석 불가
  • 일급 컬렉션 적용 여부
    “한 종류의 데이터만 가진 래퍼” 인식 불가능
  • 인스턴스 변수 ≤ 3개
    필드 개수만으로 도메인 크기를 판단 불가
  • 도메인 로직 내 getter/setter 금지
    DTO, Lombok 등 맥락 고려 필요
  • 메서드는 한 가지 일만
    정량적 판단 불가 (사람이 책임 판단해야 함)
  • 클래스를 작게 유지
    규모/의존성/역할 등 복합 요소로 자동화 불가
  • 디미터 법칙 - 코드한줄에 점(.) 하나만 허용
    checkstyle플러그인에서 미지원(PMD플러그인 설치로 검사 가능)

이 부분은 리뷰나 리팩토링 때 직접 확인해야 한다.


결론

✅ 코딩할 때 포매팅 신경 안 써도 된다
✅ 실수로 규칙 어기면 바로 경고
✅ 팀 전체, 프로젝트가 같은 컨벤션으로 깔끔한 코드 일관성 유지


📦 파일 다운로드
설정파일 다운로드
👉 wooteco-convention-intellij-config.zip
(안에 intellij-java-wooteco-style.xml + checkstyle.xml 포함)

🔗 참고
• 우테코 코드 컨벤션 공식 문서
• Checkstyle 공식 문서
• Google Java Style Guide

0개의 댓글