모든 글

작은 리팩터링을 마치고 남긴 회고

기능 변경 없이 코드를 정리할 때 지키려고 했던 범위와 검증 방법입니다.

오래된 서비스 메서드에는 조회, 검증, 변환 로직이 한곳에 모여 있었습니다. 한 번에 구조를 완전히 바꾸기보다 현재 테스트가 보호하는 범위 안에서 작은 단계로 나눴습니다.

진행 순서

  1. 기존 동작을 설명하는 테스트를 추가했습니다.
  2. 이름이 모호한 변수를 먼저 정리했습니다.
  3. 검증 로직을 작은 메서드로 분리했습니다.
  4. 각 단계마다 테스트를 실행했습니다.

리팩터링 과정에서 새 기능을 함께 넣지 않는 것이 가장 어려웠습니다. 발견한 개선 아이디어는 별도 작업으로 기록하고 현재 변경에는 포함하지 않았습니다.

결과

코드 줄 수가 크게 줄지는 않았지만 메서드의 입력과 결과가 명확해졌습니다. 다음 변경에서 영향을 확인해야 할 범위도 작아졌습니다.

완성된 구조보다 안전하게 계속 개선할 수 있는 상태를 만드는 것이 이번 작업의 가장 큰 성과였습니다.