ESLint id-length 적용은 의미가 있을까?

2026. 2. 24. 11:03개발/fe

반응형

한 글자 변수 금지(id-length)가 AI 코드 이해도에 미치는 영향

최근 LLM 기반 코드 보조 도구(GitHub Copilot, ChatGPT, Cursor 등)를 사용하는 팀이 늘어나면서, 변수 네이밍이 AI의 코드 이해도에 영향을 주는가?라는 질문이 자주 나온다.

결론부터 말하면, 영향이 있다. 그리고 생각보다 명확하다.


1. 왜 변수명이 AI 이해도에 영향을 줄까?

LLM은 다음을 기반으로 작동한다:

  • 토큰 기반 확률 모델
  • 자연어 + 오픈소스 코드 학습
  • 의미 단위 패턴 학습

즉, AI는 “의미 있는 단어 패턴”을 학습해 확률적으로 추론한다.

예를 보자.

const r = response.data

vs

const responseData = response.data

두 번째 코드는:

  • 의미 단서가 명확함
  • 다른 코드와의 연관성 추론 가능
  • 요약/리팩토링/버그 분석 정확도 상승

첫 번째 코드는:

  • r이 무엇인지 문맥 의존적
  • radius? reducer? response? result?
  • 모호성 증가

LLM은 모호성이 증가할수록 확률적 예측 품질이 떨어진다.


2. 실제로 체감 차이가 나는 영역

1) 작은 함수

차이 거의 없음.

2) 대형 파일 / 레거시 코드

차이 확연함.

  • 코드 요약 정확도 향상
  • 리팩토링 제안 품질 향상
  • 상태 관리 코드 분석 정확도 상승
  • 버그 원인 추적 성공률 증가

특히 다음 영역에서 영향이 큼:

  • Redux / Zustand 등 상태 관리
  • 도메인 모델
  • 비즈니스 로직
  • API 레이어

3. 한 글자 변수는 항상 나쁜가?

아니다. 예외는 존재한다.

아래는 AI도 잘 학습된 패턴이다:

for (let i = 0; i < list.length; i++)
(x, y) 좌표
e (event)

이 경우는:

  • 관습적 패턴
  • 문맥이 매우 제한적
  • 의미 추론이 쉬움

문제가 되는 것은:

const r = ...
const h = ...
const d = ...
const data = ...
const tmp = ...

이런 도메인 불명확 변수들이다.


4. ESLint id-length 적용은 의미가 있을까?

있다. 특히 AI 활용이 많은 팀이라면 더 그렇다.

예시 설정:

{
  "rules": {
    "id-length": ["error", {
      "min": 2,
      "exceptions": ["i", "j", "e", "x", "y"]
    }]
  }
}

이 설정의 효과:

  • 의미 없는 1글자 변수 차단
  • 반복 패턴 예외 허용
  • AI 분석 품질 유지

5. AI 친화적 코드 네이밍 전략

AI 협업 환경에서 유리한 네이밍 원칙:

  1. 축약어보다 풀네임 사용
    res → response
    req → request
  2. 도메인 단어 유지
    userEntity, orderStatus, paymentResult
  3. 추상명사 지양
    data, info, item 최소화
  4. 역할 중심 네이밍
    errorMessage, loadingState, requestHandler

6. 결론

항목영향

가독성 개선
협업 개선
AI 코드 분석 명확히 개선
빌드 성능 영향 없음

한 글자 변수 금지는 단순한 스타일 문제가 아니다.
AI와 함께 일하는 시대의 생산성 최적화 전략에 가깝다.


추천 구성

  • id-length로 1글자 금지
  • 반복문 인덱스 등은 예외 허용
  • 도메인 중심 네이밍 가이드 문서화

AI 도구를 적극 활용하는 팀이라면,
네이밍은 이제 “가독성”을 넘어 “모델 이해도 최적화”의 영역이다.

반응형

'개발 > fe' 카테고리의 다른 글

mfe how  (0) 2025.12.18
Turborepo 개념 정리  (0) 2025.12.10
console.log와 성능  (1) 2025.12.03
가상화의 기준  (0) 2025.12.03
AI 로 프런트 디자인 하는 방법  (0) 2025.08.18