목록 보기
코드 악취를 맡는 후각 훈련의 시간
아키텍처

코드 악취를 맡는 후각 훈련의 시간

마켓컬리
마켓컬리
2020년 6월 8일

두줄요약

RMS를 기능·유사도 기준으로 나누고 TODO, 리뷰, mock 테스트 중심의 단계적 리팩토링을 진행했습니다. 예외 처리와 공통 로직을 개선하고 코드 가독성·테스트 커버리지·팀 이해도를 높였습니다.

문제 상황

  • 초기 설계 미흡 상태로 진행된 RMS의 누적된 코드 악취
  • 성능·기능 장애는 없지만 수정과 유지보수가 어려운 코드 구조
  • 한 달간 3명이 수행할 리팩토링 범위와 기준 설정 필요

해결 방법

  • 메인 기능과 코드 유사성을 기준으로 8개 파트 분류, 3차 리팩토링·QA 검증·분할 배포 계획
  • 코드 길이, 중첩 조건문, 파라미터 수, 불필요 코드·로그, 모호한 이름 기반의 점검 기준 수립
  • 대상 코드와 개선 방향을 IDE TODO로 기록하고 팀 리뷰로 변경 방향 합의
  • 기존 서비스 로직의 분기를 대상으로 mock 테스트 작성 후 로컬·통합 테스트 수행

구조와 흐름

  • 오류 메시지 enum인 ExceptionType 도입으로 예외 생성과 테스트 검증 기준 통일
  • 조건문과 주석이 누적된 검수·검품 공통 로직을 각 처리 로직으로 재분리
  • 가독성 개선에 따른 코드 라인 감소와 서비스 레벨 테스트 커버리지 확대

적용해볼 점

  • 기존 담당 영역 밖의 기능을 맡아 프로젝트 이해도를 팀 전체로 확장
  • 테스트 코드 작성 경험을 통한 테스트 거부감 완화
  • 지속적인 코드 악취 탐지와 리팩토링을 유지보수 활동으로 정착

다음 읽기

#refactoring 주제를 이어서 읽기

코드 악취를 맡는 후각 훈련의 시간

한 달간 기준 수립·TODO 리뷰·테스트 검증을 기반으로 단계적 리팩토링을 진행했습니다. 예외 처리와 공통 로직을 개선하고, 코드 품질·테스트 커버리지·팀 이해도를 높였습니다.

마켓컬리
마켓컬리
아키텍처

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...