Skip to content

Latest commit

 

History

History
12 lines (7 loc) · 1.41 KB

refactoring.md

File metadata and controls

12 lines (7 loc) · 1.41 KB

Refactoring

Exploratory Refactoring

Michael Feathers가 제시한 탐색적 리팩토링은 레거시 코드를 읽는 과정에서 그저 코드를 읽기만 하는 것이 아니라 리팩토링 기술을 활용해 코드를 조금씩 수정해가며 읽는 것을 의미합니다.

이렇게 수정한 내용이 실제로 반영되지 않더라도 충분히 가치있는 일입니다. 코드를 읽은 즉시 나의 해설을 표시하기 때문에 굉장히 적극적으로 코드 리딩을 하게 되며, 코드 리딩의 주도권을 자연스럽게 리더(reader)가 가져가게 됩니다. 따라서 탐색적 리팩토링은 레거시 코드를 읽는 좋은 방법 중 하나입니다.

코드 리뷰 과정에서 자연스럽게 탐색저 리팩토링을 수행했었다. 수정된 코드를 직접 로컬로 pull 받아 직접 조금씩 수정해보면서 더 좋게 개선해볼 수 있는 부분들을 찾아 나갔다. 특히 이러한 방식은 로직을 개선하는데 많은 도움을 주었다. 여튼 레거시 코드를 떠나서 그냥 남의 코드를 읽을 때 이렇게 조금씩 수정해보면서 읽은 방법은 굉장히 좋은 것 같다.