피드로 돌아가기
Camellia: A Small Go Linter for Camel-Case Abbreviations
Dev.toDev.to
Backend

Camel-Case 일관성 확보를 통한 식별자 시각적 노이즈 제거 도구 Camellia

Camellia: A Small Go Linter for Camel-Case Abbreviations

Kaitian Xie2026년 5월 16일2beginner

Context

Go 언어의 관습적인 Initialisms 대문자 표기법(API, URL 등)으로 인해 발생하는 식별자의 시각적 불균형 및 가독성 저하 문제. 혼합 사례(Mixed-case)와 전면 대문자 사례가 공존함에 따라 코드 스캔 시 인지 부하가 증가하는 한계점 존재.

Technical Solution

  • golangci-lint 모듈 플러그인 구조를 통한 정적 분석 환경 통합
  • All-caps abbreviation 패턴을 탐지하여 Camel-case 표기법으로 변환을 제안하는 린팅 로직 구현
  • Imported symbols를 분석 대상에서 제외하여 외부 라이브러리와의 의존성 충돌 방지
  • Generated code 및 Legacy path를 위한 전용 exclude list를 제공하여 점진적 마이그레이션 지원
  • 특정 스타일 가이드 강제가 아닌 단일 명명 규칙의 일관성 유지에 집중한 Narrow-scope 설계

1. 팀 내 Naming Convention 수립 시 Initialisms 처리 방식의 일관성 검토

2. 외부 라이브러리 영향도를 최소화하기 위한 Imported symbols 제외 필터 적용

3. 대규모 레거시 코드베이스 적용 시 exclude list를 활용한 단계적 린트 도입 전략 수립

원문 읽기