Files
llm-wiki/raw/official-docs/checkstyle-google-style-reference.md

8.0 KiB
Raw Permalink Blame History

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
feature-static-analysis-quality-contract
ca-skeleton
ca-tmpl
official-doc
ca-skeleton
ci-cd
build-tooling
2026-06-15

Checkstyle Google's Style Coverage Report (Official)

Layer: raw/ — 외부 자료(공식 문서)의 원문 발췌·출처 기록. 검증된 요약은 /ingestwiki/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)