본문 바로가기
교재 실습/자바 웹 프로그래밍 Next Step

5.1.1 리팩토링 할 부분 찾기

by Jint 2025. 3. 15.

리팩토링을 하려면 먼저 나쁜 냄새(영어로 Bad Smell이라고 한다. 이 표현은 "리팩토링 : 코드 품질을 개선하는 객체지향 사고법"(마틴 파울러 저/김지원 역, 한빛미디어, 2012년) 번역서를 따라 나쁜 냄새라는 표현을 사용했다)가 나는 코드를 찾을 수 있는 능력을 키워야 한다. 리팩토링을 하는 데 있어 리팩토링을 어떻게 하느냐는 능력보다 리팩토링이 필요한 시점과 종료해야 하는 시점을 판단해야 하는 능력이 중요하다. 일단 소스코드에서 나쁜 냄새가 나면 다음 단계는 어떻게 리팩토링할 것인지 방법을 찾으면 된다. 하지만 나쁜 냄새가 진동하는 코드를 찾지 못하면 리팩토링할 필요성조차 느끼지 못해 아무런 시도도 하지 않는다.

"리팩토링 : 코드 품질을 개선하는 객체지향 사고법"(마틴 파울러 저/김지원 역, 한빛미디어, 2012년) 책에서는 리팩토링이 필요한 시점에 대한 정확한 기준을 제시하기 보다 경험적으로 인간의 직관에 맡기고 있다. 리팩토링을 할 때 어떤 기준을 가지고 하기 보단 직관에 의존해 진행한다. 이런 직관을 키우려면 좋은 코드, 나쁜 코드 가리지 말고 다른 개발자가 구현한 많은 코드를 읽을 필요가 있다. 다음 단계는 소스코드를 직접 구현해 보는 것이다. 글쓰기를 많이 한다고 해서 글쓰는 실력이 늘지 않듯이 프로그래밍 또한 많은 코드를 구현한다고 해서 리팩토링 실력이 늘지 않는다. 자신이 구현한 코드에 대해 지속적으로 의도적인 리팩토링을 할 때 한 단계 성장할 수 있다. 2장의 문자열 계산기를 구현할 때와 같이 더 이상 리팩토링할 부분이 없다고 판단될 때까지 극단적으로 연습해 보는 것도 좋은 습관이다.

"리팩토링" 책에서는 리팩토링할 코드를 찾는 정확한 방법이 아닌 몇 개의 방향을 제시하고 있으니 이 책을 참고해 리팩토링할 코드에 대한 힌트를 얻을 수도 있다.

리팩토링은 0과 1의 딱딱한 프로그래밍 세계에서 다분히 아날로그적인 사람 냄새가 나는 영역이다. 리팩토링 능력을 키우는 것은 그만큼 어렵고 많은 연습이 필요하다. 하지만 그에 따른 보상은 다른 어떤 작업보다 흥분되고 짜릿한 경험을 할 수 있는 부분이다. 리팩토링은 개발자와 평생을 같이 해야 할 친구로 생각하고 항상 곁에 두었으면 한다.



참고도서 : https://roadbook.co.kr/169

 

[신간안내] 자바 웹 프로그래밍 Next Step

● 저자: 박재성 ● 페이지: 480 ● 판형: 사륙배변형(172*225) ● 도수: 1도 ● 정가: 30,000원 ● 발행일: 2016년 9월 19일 ● ISBN: 978-89-97924-24-0 93000 [강컴] [교보] [반디] [알라딘] [예스24] [인터파크] [샘

roadbook.co.kr

댓글