
아키텍처
코드 품질 개선 기법 18편: 함수만 보고 관계는 보지 못한다
두줄요약
중첩 루프를 단순 추출하면 가독성이 크게 좋아지지 않을 수 있음을 설명했습니다. 코드의 의미 단위를 기준으로 재구성해 흐름을 단순하게 만드는 리팩토링을 제안했습니다.
핵심 내용
- 중첩 루프를 단순히 내부 함수로 추출하면 함수 경계와 의미 단위 경계가 어긋나 가독성 개선이 크지 않음
- 추출 기준은 구현의 쉬움보다 코드가 무엇을 하는지의 의미 단위에 두어야 함
- 예시에서는 페이지 단위 처리보다 Item 열을 반환하는 Sequence로 재구성해 처리 흐름을 단순화함
적용해볼 점
- 루프 중첩, 조건 분기 중첩, 데이터 구조 중첩에서도 의미 단위 기준으로 재구성 여부 검토
- 기존 구조를 그대로 추출할지, 책임 경계를 다시 나눌지 비교하며 리팩토링