8.0 KiB
title, source_type, url, archive_url, related_branches, related_projects, tags, created
| title | source_type | url | archive_url | related_branches | related_projects | tags | created | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Checkstyle – Google's Style Coverage Report (Official) | official-doc | https://checkstyle.sourceforge.io/google_style.html |
|
|
|
2026-06-15 |
Checkstyle – Google's Style Coverage Report (Official)
Layer:
raw/— 외부 자료(공식 문서)의 원문 발췌·출처 기록. 검증된 요약은/ingest후wiki/concepts/에source-summary-template형식으로 별도 작성. 원본은 raw에 영구 보관.
Parent / 활용 branch (필수)
| Branch | 이 자료가 정당화하는 결정 |
|---|---|
| raw/branch-notes/feature-static-analysis-quality-contract | D2 — Checkstyle custom minimal ruleset 설계(naming/Javadoc/logical 잔존, formatting 검사는 formatter에 위임해 suppress). google_checks.xml 기준 모듈 분류 근거. |
출처 / Source
- 원본 URL: https://checkstyle.sourceforge.io/google_style.html
- 아카이브 URL: (미확보)
- 저자 / 조직: Checkstyle Project (sourceforge.io)
- 발행일: 2026-05-30 (Last Published)
- Checkstyle 버전: 13.5.0
- 대상 스타일 가이드 버전: 26 Apr 2025 (Google Java Style)
- 마지막 확인일: 2026-06-15
왜 저장했는지 / Why archived
feature-static-analysis-quality-contract D2에서 "Checkstyle custom minimal ruleset" 설계 시 어떤 모듈이 naming/Javadoc/formatting 영역에 각각 속하는지 공식 출처로 확인하기 위해 보관. google_checks.xml 을 기준 config로 참조하며, formatter(Spotless 등)와 겹치는 formatting 모듈(Indentation/LineLength/Whitespace 계열)을 suppress 대상으로 식별하는 근거로 활용.
핵심 인용 / Key quotes (verbatim, 3~5문장)
[§Key Naming Convention Checks / Type Names] "TypeName check validates class naming conventions but cannot determine grammatical categories (noun vs. adjective)."
[§Key Naming Convention Checks / Method Names] "MethodName enforces naming patterns with noted false-negatives regarding underscores (issue #17841)."
[§Javadoc Enforcement / Required Documentation] "- MissingJavadocType: Requires javadoc for types"
[§Javadoc Enforcement / Required Documentation] "- MissingJavadocMethod: Requires javadoc for methods with exceptions for overrides and self-explanatory members"
[§Overview] "The report was created for Google Java Style (version 26 Apr 2025) and references the configuration at
google_checks.xml."
[§Formatting Module Coverage / Indentation & Spacing] "Indentation check enforces "+2 spaces" block indentation and continuation line indentation ("+4 spaces minimum")."
[§Formatting Module Coverage / Line Length] "LineLength enforces 100-character column limit with exceptions for URLs (http://, https://). Limitations include JSNI detection and long identifiers (issue #14938)."
Claims Extracted / 추출된 주장
| Claim ID | Claim (이 자료가 직접 말하는 것) | Evidence quote | Strength | Applies to | Does not prove |
|---|---|---|---|---|---|
| C1 | google_checks.xml 이 Google Java Style 을 Checkstyle 로 enforcement 하는 기준 config 이다 | [§Overview] "references the configuration at google_checks.xml" |
official-reference |
Checkstyle 13.5.0 + Google Java Style 26 Apr 2025 기준 | google_checks.xml 이 모든 프로젝트에서 그대로 사용 가능하다는 뜻이 아님 (custom suppress 필요 가능) |
| C2 | TypeName / MethodName 모듈이 naming convention 을 검사한다 | [§Naming] "TypeName check validates class naming conventions" / "MethodName enforces naming patterns" | official-reference |
Checkstyle naming rule 설계 시 | 이 모듈들이 Google Java Style 의 모든 naming 규칙을 완전히 검사함을 보장하지 않음(TypeName 은 grammatical category 미판별) |
| C3 | MissingJavadocType / MissingJavadocMethod 모듈이 Javadoc 필수 여부를 검사한다 | [§Javadoc / Required Documentation] "MissingJavadocType: Requires javadoc for types" / "MissingJavadocMethod: Requires javadoc for methods with exceptions for overrides and self-explanatory members" | official-reference |
Javadoc 강제 ruleset 설계 시 | MissingJavadocMethod 는 overrides 및 self-explanatory 멤버에 예외가 있으므로 모든 메서드를 강제하지 않음 |
| C4 | Indentation / LineLength / WhitespaceAround 등 formatting 모듈은 formatter 도구와 중복 검사 영역이다 | [§Formatting] "Indentation check enforces "+2 spaces" block indentation..." / "LineLength enforces 100-character column limit..." / "WhitespaceAround: Partial coverage..." | official-reference |
formatter(Spotless/google-java-format 등)와 Checkstyle 동시 사용 시 suppress 대상 선별 | 이 자료 자체가 "formatter 와 중복이면 suppress 해야 한다"고 명시하지는 않음 — 그 결정은 D2 의 설계 판단 |
| C5 | ParameterName / CatchParameterName / LambdaParameterName 등 로컬 변수 계열 모듈이 소문자 naming 을 강제한다 | [§Naming / Parameter and Local Variables] "ParameterName, CatchParameterName, LambdaParameterName, RecordComponentName, LocalVariableName, PatternVariableName enforce lowercase conventions" | official-reference |
로컬 변수·파라미터 naming 룰 설계 시 | 이 모듈들이 Google naming spec 의 모든 규칙(예: 1-char 변수 허용 범위)을 완전 커버하는지는 Coverage Report 상 별도 검증 필요 |
Strength 허용값 (적용한 것)
official-reference— 공식 reference/API 문서 (Checkstyle 프로젝트의 공식 coverage report)
Usage Boundaries / 적용 경계
- 이 자료가 직접 증명하는 것:
C1: google_checks.xml 이 공식 기준 config 라는 사실 (Checkstyle 13.5.0 / Google Java Style 26 Apr 2025 기준)C2: TypeName, MethodName 이 Checkstyle 내 naming 검사 모듈임C3: MissingJavadocType, MissingJavadocMethod 이 Javadoc 검사 모듈임 (단, 예외 조건 있음)C4: Indentation, LineLength, WhitespaceAround 계열이 formatting 검사 모듈임 — formatter 와 겹치는 영역C5: ParameterName 계열이 소문자 naming 을 강제함
- 이 자료가 증명하지 않는 것:
- formatter(Spotless/google-java-format) 와 Checkstyle 동시 사용 시 suppress 해야 한다는 정책 결정 (이는 D2 설계 판단)
- ca-tmpl 프로젝트에서 이 모듈들이 실제로 동작함 (별도 로컬 검증 필요)
- Checkstyle 이 Google Java Style 을 100% 커버함 (Coverage Report 는 미커버 항목을 빨간 ban 아이콘으로 명시)
- 내 프로젝트에 적용하려면 추가 확인이 필요한 것:
- ca-tmpl 의 Gradle Checkstyle 플러그인이 google_checks.xml 을 올바르게 참조하는지 확인
- formatter suppress 전략: formatting 모듈(Indentation/LineLength/Whitespace 계열)을 SuppressionFilter 또는 SuppressWarningsFilter 로 suppress 하는 XML 설계
메모 / Notes
- 이 문서는 Google Style 에 대한 Checkstyle coverage 분석 보고서이며, Checkstyle 의 원본 check reference 문서가 아님. 개별 check 의 전체 파라미터 목록은
https://checkstyle.sourceforge.io/checks/에서 별도 확인 필요. - SuppressionFilter(
checkstyle-suppressions.xml) 및 SuppressWarningsFilter(@SuppressWarnings({"checkstyle:check_name"})) 두 가지 suppress 메커니즘이 공식 제공됨 — formatting 모듈 suppress 설계 시 참조. - 추가로 봐야 할 동일 출처 페이지:
https://checkstyle.sourceforge.io/checks/(전체 check 목록),https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml(실제 config XML)
Related / 관련
- 실제 config XML:
https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml - 이 자료를 인용한 branch-note: raw/branch-notes/feature-static-analysis-quality-contract
- 이 자료를 인용한 wiki 요약: (생성 시 추가)