파트너오피스 리뉴얼, 왜 우리는 리팩터링을 하였는가?
·2023.12.28 19:30
올리브영 파트너스쿼드가 코드 가독성 및 유지보수성 향상을 위해 진행한 리팩터링 과정과 성과를 공유한다.
올리브영 파트너스쿼드는 파트너사 대상 플랫폼의 유지보수 효율을 높이기 위해 대규모 리팩터링을 진행했다. 기존 코드는 불분명한 축약어 사용, 일관성 없는 명명 규칙, 과도하게 비대해진 범용 클래스(EtEntrBaseEx 등)로 인해 가독성과 확장성이 저해되는 문제를 겪고 있었다.
리팩터링은 다음과 같은 5단계 순서로 진행되었다.
- 코드 스타일 컨벤션 정의: 팀 내 일관된 스타일 가이드 수립
- 범용 클래스 분리: 158개의 필드를 가진 거대 클래스를 도메인별 VO로 재정의
- 미사용 코드 제거: 사용되지 않는 변수 및 메서드 삭제
- 타입 안정성 확보: String 기반 상태 코드를 Enum으로 변경
- 비즈니스 로직 개선: 단일 메서드에 집중된 책임을 분리하여 로직 단순화
그 결과, 특정 서비스 로직의 코드 라인 수가 60% 감소했으며, 패키지 전체 코드 라인 수도 약 30% 감소하는 성과를 거두었다.
이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.
요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.