Written by
Jiyun Wang
on
on
코드 리팩터링 2판, 6-7. 변수 이름 바꾸기
하루에 한 챕터씩 읽고 정리해보기 도전!
6. 기본적인 리팩토링
6-7. 변수 이름 바꾸기
- 배경
- 명확한 프로그래밍의 핵심은 “이름 짓기” 이다.
- 특히 이름의 중요성은 그 사용 범위에 영향을 많이 받는다.
- 절차
- 폭넓게 쓰이는 변수라면 변수 캡슐화하기를 고려한다.
- 이름을 바꿀 변수를 참조한느 곳을 모두 찾아서 하나씩 변경한다.
- 다른 코드베이스에서 참조하는 변수라면 외부에 공개된 변수이므로 이 리팩터링을 적용할 수 없다.
- 변수 값이 변하지 않는 다면 다른 이름으로 복제본을 만들어서 하나씩 점진적으로 변경하고 테스트한다.
- 테스트한다.
- 예시
- 간단한 경우:
- 임시 변수나 인수처럼 유효범위가 함수 하나로 국한된 변수인 경우, 그저 변수를 참조한느 코드를 찾아서 하나씩 바꾸면 되며, 다 바꾼 뒤에는 테스트해서 실수한 부분은 없는지 확인한다.
- 코드 베이스 전체에서 두루 참조하는 경우:
- 변수 캡슐화하기로 처리한다.
- 상수 이름 바꾸는 경우:
- 원본의 이름을 바꾼 후, 원본의 원래이름과 같은 복제본을 만들고, 기존 이름(복제본)을 참조한느 코드들을 새 이름으로 점진적으로 바꾸고 테스트한다.
# 이렇게 정의 되어 있고. name = "상품명" # 이렇게 변수를 가져다 쓰기도 하고.. result += "<h1>{name}</h1>" # 변수 캡슐화 한다면... result += "<h1>{get_name()}</h1>" def get_name: return name def set_name(value): name = value # 복제본을 이용하여 상수 이름 바꾸기 cpyNm = "블랙베리" # 이렇게 복제본 만들어서 하나씩 이관 company_name = "블랙베리" cpyNm = compane_Name - 간단한 경우: