코드 품질 개선 기법 8편: 실상과 허상
153
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

코드 품질 개선 기법: 실상과 허상

이 게시물은 LINE 모바일 클라이언트 개발에서 발생한 코드 품질 문제 사례를 통해 컬렉션의 가변성과 불변성 문제를 다룹니다.

문제 상황

  • 가변 컬렉션(userNameMap)과 읽기 전용 컬렉션(decoratedUserNameMap)의 불일치 발생
  • 컬렉션 참조와 복사본 반환에 따른 일관성 혼란

개선 방안

  • 옵션 1: 개별 요소 접근 메서드 제공으로 변경 영향 최소화
  • 옵션 2: 컬렉션 복사본 반환으로 안전성 확보하되 성능 고려
  • 옵션 3: 원본 컬렉션 직접 반환 시 변경 가능성 명시와 문서화

핵심 메시지

함수 반환값이 변경될 수 있는지 명확히 밝혀 코드 사용자가 혼란을 겪지 않도록 해야 합니다.

연관 게시글